The Computer Language
25.03 Benchmarks Game

k-nucleotide sorted-by "cpu secs"

Always look at the source code.

(Lumpers and Splitters.)

Some of these programs are single-thread and some are multi-thread: compare "secs" and "cpu secs". Some of these programs are un-optimised and some are heavily optimised: sort-by "gz" source code size.

Some of these programs are "naked ffi" and some put that in a library. Some of these programs are high-level and some are hand-written vector instructions.

Always look at the source code.

  * possible hand-written vector instructions or "unsafe"
 
× source secs mem gz cpu secs
1.0 C++g++ #2 2.02 162,349 1634 6.00
1.3 Rust #7 2.57 139,088 1585 8.01
1.6 Rust #3 3.28 142,631 1549 9.69
1.7 Rust #6 2.79 165,048 1697 10.05
1.8 C# naot 3.12 160,424 2046 10.66
1.9 Rust #5 3.88 143,155 1745 11.53
2.0 C gcc 3.58 135,234 1512 11.88
2.0 F# #6 3.77 200,847 1913 11.90
2.1 C# naot #6 5.02 158,015 1615 12.82
2.3 C++ g++ #3 4.19 171,622 1280 13.94
2.5 Julia #6 6.98 524,595 965 14.90
2.5 C++ g++ 7.04 778,510 1452 14.94
2.6 Rust #2 6.00 142,946 1350 15.54
2.6 Lisp SBCL #4 15.75 168,317 2292 15.73
2.6 Lisp SBCL #5 15.84 169,165 2323 15.82
2.7 F# #5 4.74 213,168 1964 16.14
2.7 F# #2 4.75 212,804 1932 16.18
2.8 Ada 2012 GNAT #2 7.82 269,390 4911 16.64
2.9 Chapel #4 4.99 194,023 1074 17.10
2.9 Rust #9 6.33 141,099 1850 17.45
3.0 Rust #4 6.69 142,090 1755 17.99
3.4 Java naot 6.25 366,531 1821 20.44
3.5 Chapel #3 5.99 187,892 1044 20.90
4.0 Julia #7 9.93 575,861 1379 23.75
4.7 Java naot #3 8.31 363,635 1642 28.17
4.7 Java naot #6 8.35 397,414 1614 28.29
4.8 Go #7 7.58 168,186 1613 28.88
4.8 F# #3 13.00 1,357,251 1124 28.94
4.9 F# #4 11.38 1,356,919 1522 29.39
5.0 Go #3 8.20 150,413 1729 29.84
5.0 Go #6 8.30 150,442 1596 30.04
5.1 Go #4 9.27 144,650 1552 30.77
5.3 Lisp SBCL #6 8.79 536,506 2485 31.50
5.6 Lisp SBCL 10.80 589,226 2431 33.59
6.1 Java naot #4 36.76 183,878 1887 36.84
6.8 Dart aot #3 14.76 221,225 1526 40.72
7.4 Node.js #3 15.99 448,524 1817 44.17
7.4 * OCaml #3 16.17 286,568 1839 44.28
7.4 Lisp SBCL #2 44.39 528,470 1291 44.37
7.4 Lisp SBCL #3 44.68 528,470 1297 44.65
7.6 * OCaml 45.59 348,320 894 45.58
7.6 C# naot #4 13.01 523,211 1725 45.59
8.1 C# naot #7 48.00 593,142 1449 48.33
8.6 Java naot #5 22.53 203,649 2225 51.37
9.1 * Swift #2 14.45 273,949 1373 54.84
10 Racket #4 61.86 991,015 893 61.77
10 * OCaml #2 27.23 363,422 1247 61.88
10 Go #8 61.38 558,379 752 62.02
11 Rust 21.08 161,219 1086 64.57
13 C# naot #8 83.91 1,354,269 736 75.22
13 PHP #8 79.70 649,593 571 79.66
14 Java naot #8 85.57 1,782,706 786 86.86
15 PHP #4 25.77 270,369 1290 89.30
15 Haskell GHC 25.42 813,838 1067 89.88
15 * Haskell GHC #2 23.30 864,707 1492 90.15
15 Lua #2 90.52 613,040 620 90.49
15 F# 39.58 932,966 713 92.45
18 Node.js #8 105.52 734,392 678 106.25
18 Node.js #2 35.57 1,897,566 941 109.31
19 Perl #2 112.16 678,937 365 112.11
19 Node.js 37.72 1,361,019 1011 114.01
21 Perl 35.15 1,286,410 659 127.55
22 * Haskell GHC #3 35.14 432,185 2266 130.82
22 Perl #4 38.15 1,101,009 483 131.14
22 Julia 132.79 1,696,670 703 133.71
28 Swift #8 166.95 650,023 658 166.90
28 Perl #3 51.38 1,180,799 520 170.72
30 Python 3 #3 46.55 674,185 1970 182.00
32 Racket 194.59 2,679,632 554 194.49
37 Swift #7 223.40 650,023 607 223.34
39 Python 3 #4 76.67 523,751 663 233.07
39 Python 3 #8 234.08 642,265 525 233.99
39 Python 3 234.20 515,047 499 234.09
39 Python 3 #9 66.67 392,184 614 235.89
41 Ruby #7 243.79 399,401 792 244.17
44 Ruby #2 262.22 179,548 426 262.13
44 Ruby #3 263.08 207,466 546 263.47
53 Ruby 87.55 478,077 583 5 min
82 Pharo Smalltalk #2 8 min 671,744 1105 8 min
86 Ruby #8 8 min 872,055 529 8 min
94 Pharo Smalltalk 9 min 671,412 1196 9 min
94 Dart aot #8 9 min 536,519 676 9 min
95 Dart aot 9 min 479,850 628 9 min
  Erlang #3 1h 29 min 1,306,636 945 1h 33 min
  Erlang 1h 31 min 4,056,982 944 1h 35 min
Intel Fortran Empty
Pharo Smalltalk #5 Empty
Swift Empty