The Computer Language
25.02 Benchmarks Game

k-nucleotide

First, here are half-a-dozen naive un-optimised single-thread #8 programs transliterated line-by-line literal style into different programming languages from the same original —

  source secs mem gz  
  Go #8 61.38 558,379 752  
  Python 3 #8 234.08 642,265 525  
  PHP #8 79.70 649,593 571  
  Node.js #8 107.03 736,874 678  
  Ruby #8 8 min 872,055 529  
  Java #8 79.72 1,484,460 786  
 
 
  Here are the crowd sourced programs —  
 
 
× source secs mem gz cpu secs
1.0 C gcc 3.58 135,234 1512 11.88
1.0 Rust #7 2.57 139,088 1585 8.01
1.0 Rust #9 6.33 141,099 1850 17.45
1.1 Rust #4 6.69 142,090 1755 17.99
1.1 Rust #3 3.28 142,631 1549 9.69
1.1 Rust #2 6.00 142,946 1350 15.54
1.1 Rust #5 3.88 143,155 1745 11.53
1.1 Go #4 9.27 144,650 1552 30.77
1.1 Go #3 8.20 150,413 1729 29.84
1.1 Go #6 8.30 150,442 1596 30.04
1.2 C# naot #6 5.02 158,015 1615 12.82
1.2 C# naot 3.12 160,424 2046 10.66
1.2 Rust 21.08 161,219 1086 64.57
1.2 C++g++ #2 2.02 162,349 1634 6.00
1.2 Rust #6 2.79 165,048 1697 10.05
1.2 Go #7 7.58 168,186 1613 28.88
1.2 Lisp SBCL #4 15.75 168,317 2292 15.73
1.3 Lisp SBCL #5 15.84 169,165 2323 15.82
1.3 C++ g++ #3 4.19 171,622 1280 13.94
1.3 Ruby #2 262.22 179,548 426 262.13
1.4 Java naot #4 36.76 183,878 1887 36.84
1.4 Chapel #3 5.99 190,841 1044 20.89
1.5 Chapel #4 5.02 197,980 1074 17.16
1.5 F# #6 3.77 200,847 1913 11.90
1.5 Java naot #5 22.53 203,649 2225 51.37
1.5 Ruby #3 263.08 207,466 546 263.47
1.6 F# #2 4.75 212,804 1932 16.18
1.6 F# #5 4.74 213,168 1964 16.14
1.7 Dart aot #3 18.55 229,372 1526 55.86
2.0 Ada 2012 GNAT #2 7.82 269,390 4911 16.64
2.0 PHP #4 25.77 270,369 1290 89.30
2.7 Java naot #3 8.31 363,635 1642 28.17
2.7 Java naot 6.25 366,531 1821 20.44
2.9 Python 3 #9 66.67 392,184 614 235.89
2.9 Java naot #6 8.35 397,414 1614 28.29
3.0 Ruby #7 243.79 399,401 792 244.17
3.2 Haskell GHC 24.42 435,479 1067 86.37
3.3 Node.js #3 16.44 452,764 1817 45.22
3.5 Ruby 87.55 478,077 583 5 min
3.8 Python 3 234.20 515,047 499 234.09
3.9 C# naot #4 13.01 523,211 1725 45.59
3.9 Python 3 #4 76.67 523,751 663 233.07
3.9 Julia #6 6.82 524,403 965 14.36
3.9 Lisp SBCL #2 44.39 528,470 1291 44.37
3.9 Lisp SBCL #3 44.68 528,470 1297 44.65
4.0 Lisp SBCL #6 8.79 536,506 2485 31.50
4.1 Go #8 61.38 558,379 752 62.02
4.3 Julia #7 9.91 576,082 1379 24.88
4.4 Lisp SBCL 10.80 589,226 2431 33.59
4.4 C# naot #7 48.00 593,142 1449 48.33
4.5 Lua #2 99.19 612,901 620 99.16
4.7 Python 3 #8 234.08 642,265 525 233.99
4.8 PHP #8 79.70 649,593 571 79.66
4.8 Swift #7 225.53 649,970 607 225.47
5.0 Pharo Smalltalk 9 min 671,412 1196 9 min
5.0 Pharo Smalltalk #2 8 min 671,744 1105 8 min
5.0 Python 3 #3 46.55 674,185 1970 182.00
5.0 Perl #2 112.16 678,937 365 112.11
5.4 Dart aot 9 min 733,049 628 9 min
5.4 Node.js #8 107.03 736,874 678 107.78
5.8 C++ g++ 7.04 778,510 1452 14.94
5.9 Dart aot #8 9 min 795,816 676 9 min
6.4 Ruby #8 8 min 872,055 529 8 min
6.7 Swift #8 167.99 904,810 658 167.36
6.9 F# 39.58 932,966 713 92.45
7.3 Racket #4 61.86 991,015 893 61.77
8.1 Perl #4 38.15 1,101,009 483 131.14
8.7 Perl #3 51.38 1,180,799 520 170.72
9.5 Perl 35.15 1,286,410 659 127.55
9.7 Erlang #3 1h 29 min 1,306,636 945 1h 33 min
10 C# naot #8 83.91 1,354,269 736 75.22
10 F# #4 11.38 1,356,919 1522 29.39
10 F# #3 13.00 1,357,251 1124 28.94
10 Node.js 39.56 1,365,475 1011 115.00
13 Julia 132.16 1,696,596 703 133.09
13 Java naot #8 85.57 1,782,706 786 86.86
14 Node.js #2 37.75 1,894,363 941 112.06
20 Racket 194.59 2,679,632 554 194.49
30 Erlang 1h 31 min 4,056,982 944 1h 35 min
Intel Fortran Empty
Pharo Smalltalk #5 Empty
Swift Empty
 
 
  * possible hand-written vector instructions or "unsafe"
 
× source secs mem gz cpu secs
2.0 * Swift #2 14.46 273,932 1373 55.17
2.1 * OCaml #3 16.17 286,568 1839 44.28
2.6 * OCaml 45.59 348,320 894 45.58
2.7 * OCaml #2 27.23 363,422 1247 61.88
4.1 * Haskell GHC #3 35.01 557,658 2266 131.84
6.4 * Haskell GHC #2 23.63 864,662 1492 91.36