338 karma · joined February 8, 2017
[ my public key: https://keybase.io/heftig; my proof: https://keybase.io/heftig/sigs/vAGC78N1YQjTEZO96gvqfkVD0fit_mml6IN6XPw-wvo ]
Something like this: https://play.rust-lang.org/?version=stable&mode=debug&editio...
You could have an even more advanced version spawning tasks into something like rayon's thread pool, I assume.
All you did was move the drop from the `fn_that_drops_heavy_things` to the end of `main`, where it is outside the timing function.
If you release the accelerator, does it decouple the engine from the wheels?
https://de.wikipedia.org/wiki/Schandfl%C3%B6te
Translated by DeepL:
A pranger flute was a medieval and early modern pillory instrument for the execution of honorary sentences.
The despicable flute bears its name because of its external resemblance to a flute. The metal ring, usually hinged, at the upper end of the wooden or metal flutes was placed around the delinquent's neck and his fingers were then clamped in the metal clamp on the body of the "flute". This gave the delinquent, who was writhing in pain, the impression of a playing musician, which particularly exposed him to the ridicule of the audience. In recent times the "Schandflöte" is often presented as a punishment for bad musicians, but like the neck violin, which also resembles a musical instrument, it served to punish various minor violations of the legal system.
What you're seeing is not excess precision due to wide registers but excess precision due to optimization and constant propagation, which means GCC calculates a fast path for (argc == 1) that doesn't round correctly and ends up with "it fits".
Interestingly it does optimize to the correct "doesn't fit" with -mfpmath=387 -fexcess-precision=standard, so I guess this is a bug in how GCC treats SSE math. The sanitizer (-fsanitize=float-cast-overflow) also notices the problem.
IMO the ideal GPU for a UHD screen would be either an Iris or a Vega 10. But it's difficult to find the former outside MacBooks and the latter with more than an FHD screen.
This really should have been a requirement for software patents from the start, given how difficult software is to reverse-engineer.