Dart VS D benchmarks

Current benchmark data was generated on Mon Apr 14 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 726ms 7.5ms 80.8MB 697ms 40ms dart/exe 3.7.2
d 1.d 1781ms 9.7ms 312.7MB 1753ms 37ms ldc2 1.40.1
d 1.d 3029ms 5.2ms 314.9MB 3207ms 50ms dmd 2.111.0

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 76ms 1.2ms 42.9MB 50ms 13ms dart/exe 3.7.2
d 1.d 162ms 2.9ms 209.9MB 137ms 13ms ldc2 1.40.1
d 1.d 261ms 2.3ms 212.1MB 237ms 10ms dmd 2.111.0

coro-prime-sieve

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 4874ms 23ms 19.4MB 5347ms 77ms dart/exe 3.7.2
d 1.d timeout 0.0ms 17.8MB 4970ms 20ms dmd 2.111.0
d 1.d timeout 0.0ms 16.5MB 4967ms 13ms ldc2 1.40.1

Input: 1000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 338ms 3.7ms 10.3MB 340ms 13ms dart/exe 3.7.2
d 1.d 1031ms 1.4ms 12.2MB 1010ms 10ms ldc2 1.40.1
d 1.d 1364ms 12ms 12.1MB 1343ms 10ms dmd 2.111.0

edigits

Input: 250001

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1.d 2553ms 3.2ms 8.1MB 2543ms 0ms ldc2 1.40.1
d 1.d 2873ms 4.6ms 10.4MB 2857ms 7ms dmd 2.111.0
dart 1.dart 3672ms 17ms 18.0MB 3643ms 27ms dart/exe 3.7.2

Input: 100000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1.d 442ms 1.1ms 8.0MB 430ms 0ms ldc2 1.40.1
d 1.d 523ms 2.9ms 10.4MB 513ms 0ms dmd 2.111.0
dart 1.dart 602ms 2.4ms 10.4MB 577ms 17ms dart/exe 3.7.2

fannkuch-redux

Input: 11

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1-im.d 375ms 7.3ms 3.0MB 1420ms 0ms ldc2 1.40.1
d 2-im.d 1128ms 21ms 2.9MB 4313ms 0ms ldc2 1.40.1
d 1-i.d 1484ms 0.3ms 2.8MB 1470ms 0ms ldc2 1.40.1
dart 2.dart 2725ms 4.7ms 6.3MB 2717ms 0ms dart/exe 3.7.2
d 1.d 3120ms 15ms 2.9MB 3110ms 0ms ldc2 1.40.1
d 2-i.d 3240ms 3.2ms 2.9MB 3230ms 0ms ldc2 1.40.1
d 1.d 3532ms 4.1ms 4.6MB 3523ms 0ms dmd 2.111.0
d 1-im.d 4474ms 19ms 4.9MB 17573ms 0ms dmd 2.111.0
d 1-i.d timeout 0.0ms 4.6MB 4990ms 0ms dmd 2.111.0
d 2-i.d timeout 0.0ms 4.5MB 4990ms 0ms dmd 2.111.0
d 2-im.d timeout 0.0ms 4.9MB 19740ms 3ms dmd 2.111.0

Input: 10

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1-im.d 38ms 0.5ms 3.0MB 110ms 0ms ldc2 1.40.1
d 2-im.d 99ms 2.1ms 2.9MB 350ms 0ms ldc2 1.40.1
d 1-i.d 124ms 0.3ms 2.9MB 117ms 0ms ldc2 1.40.1
dart 2.dart 223ms 3.1ms 6.3MB 210ms 0ms dart/exe 3.7.2
d 1.d 262ms 1.9ms 2.9MB 253ms 0ms ldc2 1.40.1
d 2-i.d 268ms 0.7ms 2.9MB 260ms 0ms ldc2 1.40.1
d 1.d 295ms 1.1ms 4.6MB 287ms 0ms dmd 2.111.0
d 1-im.d 375ms 3.7ms 4.8MB 1433ms 0ms dmd 2.111.0
d 2-im.d 528ms 7.3ms 4.9MB 2010ms 0ms dmd 2.111.0
d 1-i.d 893ms 3.1ms 4.5MB 883ms 0ms dmd 2.111.0
d 2-i.d 1384ms 18ms 4.6MB 1373ms 0ms dmd 2.111.0

fasta

Input: 2500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1.d 156ms 2.3ms 2.9MB 147ms 0ms ldc2 1.40.1
dart 1.dart 362ms 1.9ms 8.6MB 350ms 0ms dart/exe 3.7.2
d 1.d 640ms 0.8ms 4.6MB 630ms 0ms dmd 2.111.0

Input: 250000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1.d 19ms 0.4ms 3.0MB 10ms 0ms ldc2 1.40.1
dart 1.dart 43ms 0.6ms 8.9MB 30ms 0ms dart/exe 3.7.2
d 1.d 68ms 1.3ms 4.9MB 60ms 0ms dmd 2.111.0

helloworld

Input: QwQ

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1.d 1.6ms 0.1ms 2.9MB 0ms 0ms ldc2 1.40.1
d 1.d 2.1ms 0.2ms 5.0MB 0ms 0ms dmd 2.111.0
dart 1.dart 3.4ms 0.2ms 5.1MB 0ms 0ms dart/exe 3.7.2

http-server

Input: 3000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 2-m.dart 1430ms 30ms 94.6MB 1343ms 1570ms dart/exe 3.7.2
dart 1.dart 4570ms 155ms 103.6MB 1527ms 1790ms dart/exe 3.7.2

Input: 500

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 2-m.dart 264ms 3.6ms 50.1MB 190ms 297ms dart/exe 3.7.2
dart 1.dart 2030ms 503ms 50.5MB 167ms 273ms dart/exe 3.7.2

json-serde

Input: sample 5000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 2.d 57ms 0.1ms 15.8MB 63ms 7ms ldc2 1.40.1
dart 1.dart 165ms 2.5ms 53.4MB 140ms 20ms dart/exe 3.7.2
d 2.d 238ms 0.7ms 22.5MB 243ms 7ms dmd 2.111.0

Input: canada 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 2.d 465ms 6.7ms 141.8MB 433ms 37ms ldc2 1.40.1
dart 1.dart 1499ms 19ms 205.3MB 1737ms 110ms dart/exe 3.7.2
d 2.d 2485ms 13ms 158.9MB 2507ms 27ms dmd 2.111.0

knucleotide

Input: 2500000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1-m.d 653ms 20ms 47.2MB 2180ms 13ms ldc2 1.40.1
dart 3-m.dart 1093ms 17ms 274.3MB 3243ms 97ms dart/exe 3.7.2
d 1-m.d 1844ms 52ms 49.5MB 5630ms 17ms dmd 2.111.0

Input: 250000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1-m.d 90ms 7.2ms 39.9MB 250ms 10ms ldc2 1.40.1
dart 3-m.dart 204ms 3.3ms 195.2MB 510ms 63ms dart/exe 3.7.2
d 1-m.d 211ms 8.5ms 40.0MB 597ms 10ms dmd 2.111.0

lru

Input: 1000 1000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1.d 130ms 0.8ms 5.9MB 120ms 0ms ldc2 1.40.1
dart 2.dart 163ms 5.4ms 9.4MB 153ms 0ms dart/exe 3.7.2
d 1.d 174ms 1.5ms 7.9MB 163ms 0ms dmd 2.111.0
dart 1.dart 498ms 2.6ms 9.3MB 490ms 0ms dart/exe 3.7.2

Input: 1000 3000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1.d 375ms 0.8ms 5.9MB 360ms 17ms ldc2 1.40.1
dart 2.dart 476ms 1.7ms 9.3MB 463ms 0ms dart/exe 3.7.2
d 1.d 512ms 3.5ms 7.9MB 503ms 13ms dmd 2.111.0
dart 1.dart 1484ms 9.2ms 9.3MB 1467ms 3ms dart/exe 3.7.2

Input: 100 500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1.d 57ms 0.3ms 5.9MB 50ms 0ms ldc2 1.40.1
dart 2.dart 77ms 1.0ms 9.5MB 67ms 0ms dart/exe 3.7.2
d 1.d 79ms 0.5ms 8.2MB 70ms 0ms dmd 2.111.0
dart 1.dart 117ms 0.8ms 8.6MB 103ms 0ms dart/exe 3.7.2

merkletrees

Input: 17

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 314ms 2.9ms 63.6MB 290ms 20ms dart/exe 3.7.2
d 1.d 993ms 10ms 312.6MB 957ms 40ms ldc2 1.40.1
d 1.d 1872ms 32ms 315.0MB 2010ms 43ms dmd 2.111.0

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 1.dart 83ms 1.2ms 43.8MB 60ms 13ms dart/exe 3.7.2
d 1.d 201ms 1.6ms 312.6MB 163ms 27ms ldc2 1.40.1
d 1.d 361ms 8.8ms 315.1MB 330ms 27ms dmd 2.111.0

nbody

Input: 5000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 2.d 361ms 0.8ms 2.9MB 350ms 0ms ldc2 1.40.1
d 1.d 362ms 1.7ms 2.9MB 350ms 0ms ldc2 1.40.1
dart 3.dart 406ms 0.2ms 6.5MB 397ms 0ms dart/exe 3.7.2
d 1.d 689ms 3.9ms 4.6MB 680ms 0ms dmd 2.111.0
d 2.d 2028ms 2.4ms 4.8MB 2020ms 0ms dmd 2.111.0

Input: 500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1.d 39ms 0.4ms 2.9MB 30ms 0ms ldc2 1.40.1
d 2.d 39ms 0.5ms 2.9MB 30ms 0ms ldc2 1.40.1
dart 3.dart 46ms 1.1ms 6.3MB 40ms 0ms dart/exe 3.7.2
d 1.d 71ms 0.7ms 4.6MB 60ms 0ms dmd 2.111.0
d 2.d 207ms 2.0ms 4.8MB 200ms 0ms dmd 2.111.0

pidigits

Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 2.dart 1341ms 4.8ms 14.6MB 1313ms 30ms dart/exe 3.7.2
d 1.d 2442ms 0.9ms 8.1MB 2387ms 437ms ldc2 1.40.1
d 1.d 4423ms 16ms 10.5MB 4377ms 467ms dmd 2.111.0

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
dart 2.dart 331ms 2.9ms 14.8MB 307ms 17ms dart/exe 3.7.2
d 1.d 586ms 1.5ms 8.0MB 577ms 93ms ldc2 1.40.1
d 1.d 1052ms 4.2ms 10.4MB 1030ms 117ms dmd 2.111.0

regex-redux

Input: 2500000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 3.d 577ms 2.8ms 182.2MB 760ms 17ms ldc2 1.40.1
d 3.d 1203ms 2.2ms 176.9MB 1397ms 20ms dmd 2.111.0
dart 1.dart timeout 0.0ms 188.0MB 4990ms 43ms dart/exe 3.7.2

Input: 250000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 3.d 64ms 0.4ms 27.5MB 70ms 0ms ldc2 1.40.1
d 3.d 128ms 3.1ms 30.8MB 133ms 3ms dmd 2.111.0
dart 1.dart 561ms 17ms 43.3MB 543ms 10ms dart/exe 3.7.2

spectral-norm

Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1.d 3597ms 3.3ms 3.9MB 3583ms 0ms ldc2 1.40.1
d 1.d 3641ms 25ms 6.0MB 3633ms 0ms dmd 2.111.0
dart 1.dart 3773ms 11ms 6.4MB 3760ms 0ms dart/exe 3.7.2
dart 2.dart 4339ms 3.8ms 6.5MB 4330ms 0ms dart/exe 3.7.2

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1.d 902ms 0.9ms 3.5MB 890ms 0ms ldc2 1.40.1
d 1.d 928ms 5.7ms 5.3MB 917ms 0ms dmd 2.111.0
dart 1.dart 945ms 0.3ms 6.3MB 933ms 0ms dart/exe 3.7.2
dart 2.dart 1092ms 3.1ms 6.3MB 1080ms 0ms dart/exe 3.7.2

Input: 2000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
d 1.d 230ms 0.6ms 3.0MB 220ms 0ms ldc2 1.40.1
d 1.d 234ms 2.3ms 5.0MB 223ms 0ms dmd 2.111.0
dart 1.dart 241ms 2.2ms 6.3MB 230ms 0ms dart/exe 3.7.2
dart 2.dart 279ms 3.2ms 6.3MB 270ms 0ms dart/exe 3.7.2