| Website | https://checkoway.net |
| @stevecheckoway | |
| GitHub | https://github.com/stevecheckoway |
| BlueSky | https://bsky.app/profile/stevecheckoway.bsky.social |
| Website | https://checkoway.net |
| @stevecheckoway | |
| GitHub | https://github.com/stevecheckoway |
| BlueSky | https://bsky.app/profile/stevecheckoway.bsky.social |
Related question, how many bits do I need to use to add the significands?
I found that converting the 11-bit significands to 32-bit integers by shifting them left by 19 before normalizing to the larger exponent lead to correct results using rounding with ties to even. Using 16-bit integers by shifting left by 3 doesn’t give me the correct results.
My thinking was I need a few bits to determine how to round and I wanted to make sure the signed significand addition didn’t overflow my type (either i32 or i16).
My current intuition is I need twice as many bits (so 22 plus 1 for the sum plus 1 for the sign).
Floating point question:
I have two half precision floating point numbers. I convert them to single precision, add them, and convert the sum back to f16.
What’s the maximum I should expect the difference between the converted sum and the result of adding the two f16s directly?
I implemented f16 addition in software and originally was testing by converting to f32, adding, and converting back to f16 but I was getting large differences on some inputs (e.g., adding the smallest positive subnormal to negative small powers of 2 like -2^-12). Large here meaning integer differences of the underlying u16 of more than 8.
When I test my implementation against hardware f16, all 2^32 sums are bit-for-bit correct for all finite and infinite sums. Every computation involving a NaN gives me a NaN (but I’m not checking it’s giving the “right” NaN, just that it’s a NaN).
When I’m back at a computer, I can compute the answer to my question, but I’d like to understand the maximum difference analytically rather than merely empirically.
I've always kind of wondered why rmdir(2) only deletes empty directories. (I suppose it could be simply to keep the recursive directory traversal logic out of the kernel.) One can usually just recursively delete directories so this doesn't matter but I ran across a situation where it does actually matter that rmdir only deletes empty directories that I hadn't considered before.
If directory /containing is writable by user u and directory /containing/private is not writable by user u, then u can delete /containing/private only if /containing/private is empty.
This kind of feels like it's a security/access control choice. Does anyone know if this scenario was an explicit consideration when the rmdir system call was being designed? (The macOS man page suggests that rmdir(2) appeared in 4.2BSD.)
Fellow academics, does your college or university's central IT control what software you can install on your laptops/research computers or do you have admin access?
I'm curious how wide-spread the practice of locking down what can be installed on academic computers is.
SAN FRANCISCO—The Electronic Frontier Foundation (EFF) is honored to announce today that Tarah Wheeler — a social scientist studying international conflict, an author, and a poker player who is CEO of the cybersecurity compliance company Red Queen Dynamics — has joined EFF’s Board of Directors....
I’m in a long line for the bag drop at the airport. A robotic cart joined the queue. It alternated between demanding people move in Japanese and English, and voicing the same demands at a variety of barriers.
People have done their best to acquiesce to its demands, but it’s now stationary and shouting in multiple languages.