Dart VS C benchmarks

Current benchmark data was generated on Thu May 01 2025, full log can be found HERE

CONTRIBUTIONS are WELCOME!

[x86_64][4 cores] AMD EPYC 7763 64-Core Processor (Model 1)

* -m in a file name stands for multi-threading or multi-processing

* -i in a file name stands for direct intrinsics usage. (Usage of simd intrinsics via libraries is not counted)

* -ffi in a file name stands for non-stdlib FFI usage

* (You may find time < time(user) + time(sys) for some non-parallelized programs, the overhead is from GC or JIT compiler, which are allowed to take advantage of multi-cores as that's more close to real-world scenarios.)

binarytrees

Input: 18

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 697ms 3.5ms 80.8MB 670ms 33ms dart/exe 3.7.3

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 74ms 0.8ms 42.8MB 47ms 17ms dart/exe 3.7.3

coro-prime-sieve

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 4867ms 13ms 19.1MB 5343ms 73ms dart/exe 3.7.3

Input: 1000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 342ms 2.2ms 10.4MB 343ms 13ms dart/exe 3.7.3

edigits

Input: 250001

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 3681ms 2.9ms 18.0MB 3650ms 27ms dart/exe 3.7.3

Input: 100000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 608ms 14ms 10.0MB 587ms 13ms dart/exe 3.7.3

fannkuch-redux

Input: 11

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 2.dart 2709ms 2.1ms 6.1MB 2697ms 0ms dart/exe 3.7.3

Input: 10

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 2.dart 221ms 0.6ms 6.1MB 210ms 0ms dart/exe 3.7.3

fasta

Input: 2500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 360ms 2.6ms 8.8MB 350ms 0ms dart/exe 3.7.3

Input: 250000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 41ms 0.6ms 8.8MB 30ms 0ms dart/exe 3.7.3

helloworld

Input: QwQ

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
c 1.c 1.0ms 0.0ms 1.3MB 0ms 0ms zigcc 0.14.0
c 1.c 1.2ms 0.0ms 2.1MB 0ms 0ms gcc 15.1.0
c 1.c 1.3ms 0.1ms 2.1MB 0ms 0ms clang 14.0.0-1ubuntu1.1
dart 1.dart 3.8ms 0.3ms 5.4MB 0ms 0ms dart/exe 3.7.3

http-server

Input: 3000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 2-m.dart 1440ms 36ms 95.8MB 1327ms 1607ms dart/exe 3.7.3
dart 1.dart 4464ms 132ms 99.8MB 1503ms 1840ms dart/exe 3.7.3

Input: 500

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 2-m.dart 266ms 17ms 50.3MB 183ms 293ms dart/exe 3.7.3
dart 1.dart 1974ms 614ms 50.6MB 163ms 273ms dart/exe 3.7.3

json-serde

Input: sample 5000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 164ms 3.5ms 54.2MB 137ms 17ms dart/exe 3.7.3

Input: canada 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 1478ms 13ms 206.4MB 1713ms 113ms dart/exe 3.7.3

knucleotide

Input: 2500000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
c 1-m.c 171ms 2.8ms 23.5MB 400ms 10ms gcc 15.1.0
c 1-m.c 299ms 5.2ms 25.7MB 1013ms 33ms clang 14.0.0-1ubuntu1.1
dart 3-m.dart 1121ms 16ms 275.8MB 3323ms 120ms dart/exe 3.7.3

Input: 250000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
c 1-m.c 27ms 0.7ms 13.6MB 60ms 0ms gcc 15.1.0
c 1-m.c 37ms 0.6ms 14.9MB 103ms 3ms clang 14.0.0-1ubuntu1.1
dart 3-m.dart 214ms 8.4ms 185.8MB 517ms 73ms dart/exe 3.7.3

lru

Input: 1000 1000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 2.dart 167ms 3.0ms 9.1MB 157ms 0ms dart/exe 3.7.3
dart 1.dart 491ms 4.6ms 9.0MB 483ms 0ms dart/exe 3.7.3

Input: 1000 3000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 2.dart 484ms 4.8ms 9.1MB 470ms 0ms dart/exe 3.7.3
dart 1.dart 1460ms 5.6ms 9.1MB 1447ms 3ms dart/exe 3.7.3

Input: 100 500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 2.dart 76ms 1.4ms 8.9MB 67ms 0ms dart/exe 3.7.3
dart 1.dart 111ms 3.0ms 9.3MB 103ms 0ms dart/exe 3.7.3

merkletrees

Input: 17

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 306ms 4.3ms 63.8MB 277ms 33ms dart/exe 3.7.3

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 83ms 1.1ms 43.6MB 60ms 17ms dart/exe 3.7.3

nbody

Input: 5000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
c 8-i.c 267ms 0.0ms 1.5MB 260ms 0ms zigcc 0.14.0
c 8-i.c 302ms 1.1ms 2.1MB 290ms 0ms clang 14.0.0-1ubuntu1.1
c 2.c 309ms 1.2ms 2.3MB 300ms 0ms gcc 15.1.0
c 5.c 313ms 1.1ms 2.3MB 300ms 0ms gcc 15.1.0
c 2.c 315ms 3.3ms 1.5MB 307ms 0ms zigcc 0.14.0
c 5.c 315ms 1.3ms 2.1MB 310ms 0ms clang 14.0.0-1ubuntu1.1
c 5.c 316ms 1.7ms 1.5MB 307ms 0ms zigcc 0.14.0
c 2.c 318ms 1.3ms 2.1MB 310ms 0ms clang 14.0.0-1ubuntu1.1
c 8-i.c 337ms 0.2ms 2.3MB 330ms 0ms gcc 15.1.0
dart 3.dart 408ms 3.0ms 6.3MB 400ms 0ms dart/exe 3.7.3

Input: 500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
c 8-i.c 29ms 0.3ms 1.5MB 20ms 0ms zigcc 0.14.0
c 8-i.c 33ms 0.1ms 2.1MB 23ms 0ms clang 14.0.0-1ubuntu1.1
c 2.c 33ms 0.5ms 1.5MB 27ms 0ms zigcc 0.14.0
c 2.c 33ms 0.5ms 2.3MB 27ms 0ms gcc 15.1.0
c 5.c 33ms 0.2ms 2.3MB 27ms 0ms gcc 15.1.0
c 5.c 34ms 0.2ms 2.1MB 30ms 0ms clang 14.0.0-1ubuntu1.1
c 5.c 35ms 0.4ms 1.5MB 30ms 0ms zigcc 0.14.0
c 2.c 35ms 1.6ms 2.1MB 30ms 0ms clang 14.0.0-1ubuntu1.1
c 8-i.c 36ms 0.1ms 2.3MB 30ms 0ms gcc 15.1.0
dart 3.dart 45ms 0.2ms 6.4MB 40ms 0ms dart/exe 3.7.3

pidigits

Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 2.dart 1346ms 10ms 14.8MB 1320ms 27ms dart/exe 3.7.3

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 2.dart 329ms 3.6ms 14.8MB 313ms 13ms dart/exe 3.7.3

regex-redux

Input: 2500000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart timeout 0.0ms 188.2MB 4970ms 60ms dart/exe 3.7.3

Input: 250000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 571ms 9.2ms 43.3MB 543ms 20ms dart/exe 3.7.3

spectral-norm

Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
c 3-m.c 739ms 2.6ms 2.0MB 2903ms 0ms gcc 15.1.0
c 6-im.c 958ms 3.1ms 2.0MB 3763ms 0ms gcc 15.1.0
c 4-m.c 997ms 13ms 2.0MB 3907ms 0ms gcc 15.1.0
c 6-im.c 1028ms 44ms 3.3MB 4000ms 10ms clang 14.0.0-1ubuntu1.1
c 4-m.c 1124ms 4.6ms 3.3MB 4410ms 3ms clang 14.0.0-1ubuntu1.1
c 5-im.c 1146ms 2.8ms 2.0MB 4513ms 0ms gcc 15.1.0
c 5-im.c 1331ms 1.7ms 3.1MB 5233ms 10ms clang 14.0.0-1ubuntu1.1
c 3-m.c 1851ms 34ms 3.3MB 7240ms 17ms clang 14.0.0-1ubuntu1.1
dart 1.dart 3773ms 11ms 6.4MB 3760ms 0ms dart/exe 3.7.3
dart 2.dart 4350ms 7.7ms 6.4MB 4340ms 0ms dart/exe 3.7.3

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
c 3-m.c 195ms 2.1ms 2.0MB 740ms 0ms gcc 15.1.0
c 6-im.c 246ms 0.9ms 2.0MB 940ms 0ms gcc 15.1.0
c 4-m.c 260ms 2.9ms 2.0MB 993ms 0ms gcc 15.1.0
c 6-im.c 261ms 6.0ms 3.3MB 993ms 0ms clang 14.0.0-1ubuntu1.1
c 4-m.c 288ms 1.3ms 3.1MB 1107ms 0ms clang 14.0.0-1ubuntu1.1
c 5-im.c 298ms 5.3ms 2.0MB 1147ms 0ms gcc 15.1.0
c 5-im.c 347ms 7.1ms 3.3MB 1323ms 0ms clang 14.0.0-1ubuntu1.1
c 3-m.c 486ms 22ms 3.1MB 1843ms 7ms clang 14.0.0-1ubuntu1.1
dart 1.dart 944ms 0.8ms 6.3MB 933ms 0ms dart/exe 3.7.3
dart 2.dart 1092ms 3.1ms 6.1MB 1083ms 0ms dart/exe 3.7.3

Input: 2000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
c 3-m.c 56ms 0.5ms 2.0MB 200ms 0ms gcc 15.1.0
c 6-im.c 70ms 0.6ms 3.3MB 243ms 0ms clang 14.0.0-1ubuntu1.1
c 4-m.c 72ms 0.5ms 2.0MB 260ms 0ms gcc 15.1.0
c 6-im.c 75ms 11ms 2.0MB 257ms 0ms gcc 15.1.0
c 4-m.c 79ms 3.5ms 3.3MB 280ms 0ms clang 14.0.0-1ubuntu1.1
c 5-im.c 81ms 1.2ms 2.0MB 293ms 0ms gcc 15.1.0
c 5-im.c 91ms 0.1ms 3.1MB 330ms 0ms clang 14.0.0-1ubuntu1.1
c 3-m.c 124ms 3.0ms 3.3MB 450ms 0ms clang 14.0.0-1ubuntu1.1
dart 1.dart 241ms 1.0ms 6.4MB 230ms 0ms dart/exe 3.7.3
dart 2.dart 279ms 3.2ms 6.3MB 270ms 0ms dart/exe 3.7.3