The Computer Language
25.02 Benchmarks Game

Node.js versus Dart aot

How the programs are written matters! Always look at the source code.

If the fastest programs are flagged * possible hand-written vector instructions or "unsafe" or naked ffi, does the host language matter? You might be more interested in the less optimised programs — more seconds, less gz source code.

fannkuch-redux      
  elapsed Mean or 95% CI      
source secs cpu secs mem gz make
Dart aot #3 40.60 40.62 8,757 553 4.86
Node.js #5 11.07 43.76—44.47 111,055 1320 0.14
Dart aot #5 11.93 47.42 10,613 1227 6.31
Dart aot #2 57.48 57.48 8,950 510 4.72
Node.js #8 58.32 58.31 64,094 452 0.13
Dart aot #8 60.61 60.61 8,954 508 4.86
n-body      
  elapsed Mean or 95% CI      
source secs cpu secs mem gz make
Dart aot #6 6.79 6.79 8,950 1318 6.09
Dart aot #8 7.25 7.25 9,093 1268 6.09
Node.js #6 8.55 8.60—8.73 67,244 1274 0.11
Dart aot #2 8.63 8.64 8,950 1273 6.16
Node.js #8 9.63 9.64—9.99 66,695 1173 0.16
Dart aot #3 9.91 9.91 8,954 1413 4.71
spectral-norm      
  elapsed Mean or 95% CI      
source secs cpu secs mem gz make
Dart aot 5.34 5.34 9,060 468 6.10
Node.js #7 5.40 5.40 66,163 420 0.12
Node.js 5.41 5.38—5.51 67,637 326 0.15
Dart aot #6 1.46 5.71 19,603 1202 5.03
Dart aot #2 1.54 5.72 20,505 1173 5.00
Node.js #6 1.60 6.03 116,212 1002 0.14
Node.js #8 6.53 6.53 66,642 355 0.14
Dart aot #8 8.38 8.38 9,994 422 6.19
mandelbrot      
  elapsed Mean or 95% CI      
source secs cpu secs mem gz make
Dart aot #3 15.69 15.70 17,887 620 6.13
Node.js #3 4.05 15.86—15.92 144,757 1128 0.15
Dart aot #4 4.29 16.82 45,175 988 4.94
Node.js #2 29.41 29.44 73,617 422 0.11
Dart aot #2 30.25 30.26 11,768 494 4.84
Dart aot #6 11.74 31.45 84,529 914 6.27
Node.js 69.02 72.84—75.47 69,100 380 0.15
Node.js #8 70.31 73.08—75.99 68,338 412 0.11
Dart aot 119.40 122.73—125.51 11,932 462 4.83
Dart aot #8 178.87 181.69—186.69 11,768 471 4.82
fasta      
  elapsed Mean or 95% CI      
source secs cpu secs mem gz make
Dart aot #4 3.99 4.10 417,403 1307 5.17
Dart aot 4.36 4.36 11,575 1407 6.04
Dart aot #3 4.38 4.41 331,346 1114 6.10
Dart aot #5 2.89 4.78 484,553 1489 5.13
* Node.js #5 2.56 7.10—7.15 120,930 2050 0.14
Dart aot #2 15.22 15.48—16.06 11,731 1075 4.97
Node.js #8 18.98 19.26—19.53 74,129 742 0.13
Dart aot #8 28.31 28.61—29.04 11,747 824 6.20
Node.js 38.55 39.18—39.87 71,639 815 0.14
k-nucleotide      
  elapsed Mean or 95% CI      
source secs cpu secs mem gz make
Dart aot #3 14.76 41.19—41.69 221,225 1526 6.45
Node.js #3 15.99 43.91—44.53 448,524 1817 0.14
Node.js #8 105.52 109.35—113.96 734,392 678 0.13
Node.js #2 35.57 110.72—113.74 1,897,566 941 0.13
Node.js 37.72 115.01—117.24 1,361,019 1011 0.13
Dart aot #8 561.70 565.05—569.06 536,519 676 6.13
Dart aot 568.53 570.96—573.66 479,850 628 4.96
reverse-complement      
  elapsed Mean or 95% CI      
source secs cpu secs mem gz make
Dart aot #5 8.55 11.60—11.67 2,049,769 942 5.19
* Node.js #2 15.53 16.25—16.39 763,048 1228 0.14
Dart aot #8 17.41 18.14 1,029,464 651 5.01
Dart aot #3 63.21 71.74—72.02 6,642,663 571 6.32
Dart aot #2 103.48 118.17—118.81 6,579,233 575 4.87
* Node.js #7   Bad Output  
Dart aot #4   Bad Output  
binary-trees      [ Contentious. Different approaches. ]
  elapsed Mean or 95% CI      
source secs cpu secs mem gz make
Dart aot #6 11.72 16.17—16.31 474,780 488 4.72
Dart aot #7 9.57 23.83—24.70 635,625 869 4.91
Dart aot #4 10.24 24.69—25.33 692,199 1394 4.94
Node.js #7 16.07 28.29—28.55 1,128,059 458 0.10
Dart aot #5 12.17 30.07—30.48 524,239 1023 6.14
Node.js #6 8.61 30.92—31.04 1,275,720 752 0.06
Node.js 8.94 33.89—34.14 1,389,228 717 0.09
Dart aot #3 17.52 57.53—62.81 4,337,738 1219 6.15
pidigits      [ Contentious. Different libraries. ]
  elapsed Mean or 95% CI      
source secs cpu secs mem gz make
Node.js #4 1.15 1.16 71,688 487 0.14
Dart aot #2 2.86 2.92 18,436 496 4.91
Dart aot #3 3.23 3.30 18,416 495 4.85
Node.js #2 12.17 12.15—12.42 102,679 405 0.10
Node.js #3 12.25 12.23—12.38 102,257 431 0.12
regex-redux      [ Contentious. Different libraries. ]
  elapsed Mean or 95% CI      
source secs cpu secs mem gz make
Node.js #3 4.35 5.71—5.92 840,503 675 0.12
Node.js #4 5.47 5.63—5.76 1,036,935 471 0.14
Dart aot #4 14.55 15.13—15.93 404,128 513 5.00
Dart aot #5 9.56 15.50—16.33 484,794 710 6.27
Dart aot #3 10.05 17.68—17.95 509,993 1061 6.37
Dart aot #2 17.05 18.03—18.47 423,469 667 4.94
Node.js

v23.8.0

Dart aot

Dart SDK version: 3.7.0 (stable)
Wed Feb 5 04:53:58 2025