Re:Python 3.11 is faster than 3.8
by vjerancrnjak on Wednesday October 26, 2022 @04:50PM
(#33349230)
This should also be the case for nim. Generated C always looks very simple with -d:danger (when all memory access checks disappear).
[ Parent
| on HN ]
If I do nimble build -d:lto -d:danger --passC:-march=native I get 1920 fps while if I do nimble build -d:lto -d:release --passC:-march=native I still get 1775 fps. So, at least for Nim, the checks are only a 1.08x slowdown..Not so bad compared to the 2521 vs 1626 = 1.55x Zig-Rust slowdown on the author's machine.
Heck, I see 1.33x differences in run times between the first & second run of the rust branch of his benchmark, but only 1.05x diffs in run times between 1st & 2nd Nim branch.
In my experience, reasoning about things like this is rarely as simple as "bounds checks" which are (often) the most highly predictable branches.
Re:Python 3.11 is faster than 3.8
by vjerancrnjak on Thursday October 27, 2022 @02:17AM
(#33353833)
True. Recently I noticed that std/sha1 takes 8x the time on M1 release vs danger. Yet on amd64 it's only a <10% difference.