@dom96:

> it's really hard to gauge which language is truly faster among the top 
> 10(20?30?). I suppose the take away is: they are all pretty much on par.

How do you see that? In order to qualify for actual comparison, contributions 
must be single-threaded/base/faithful-to-base so from your link above for the 
fastest AMD Ryzen 5950X CPU (at 4.9 GHz turbo single-threaded), the rankings 
for the qualifying implementations are as follows for today:

  1. Rust: 69480 passes in five seconds.
  2. Nim: 67107 passes in five seconds.
  3. Zig: 66162 passes in five seconds.
  4. Haskell: 58367 passes in five seconds.



with the next closest at my contribution for the V language at 45657 and only 
my contributions for Chapel, Julia, and Crystal, as fast as half the speed of 
the leaders.

That seems pretty definitive to me that there are only four leaders and only 
four other languages that come anywhere close.

The relative results vary about +/- 1000 from day to day for tests on this CPU 
due to variations in the run time environments, such as applications in use, 
memory in use, order of use, state of the Garbage Collector if used, etc. and 
with the variations slightly higher than usual due to being run on a Hyper-V 
virtual machine, but the relative rankings stay about the same.

Some languages such as V and Chapel are held back by not having macros so that 
one can easily implement the full "dense culling" algorithm for small base 
prime values up to 127 and is limited to only base prime values up to 19 with 
the dense culling code using a prefix code generation step that stopped at this 
level due to the code size getting so large; for Julia, I had to limit the 
"dense" prime threshold value to only 13 because being an Ahead-Of-Time (AOT) 
compiled language, the optimization is reduced for too large macro generated 
code file sizes to reduce the amount of time one waits for code compilation 
before the code starts running. This is also why there aren't faster C/C++ 
versions as without true AST macros, one would have to resort to code 
generation and no one has seemed to have enough interest to do that; if someone 
did that for them, they should be somewhere in the rankings close to the V 
language (or all the way to the top for huge generated code sizes as for from 
Nim's macros) at the cost of ugly code.

Reply via email to