All D benchmarks

Current benchmark data was generated on Fri Jul 01 2022, full log can be found HERE

CONTRIBUTIONS are WELCOME!

[x86_64][2 cores] Intel(R) Xeon(R) Platinum 8171M CPU @ 2.60GHz (Model 85)

* -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

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 4154ms 6.5ms 75.2MB 4467ms 37ms ldc2 1.29.0
1.d timeout 0.0ms 0.0MB 0ms 0ms dmd 2.100.0

Input: 15

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 387ms 5.1ms 15.1MB 377ms 3ms ldc2 1.29.0
1.d 556ms 20ms 16.2MB 553ms 0ms dmd 2.100.0

coro-prime-sieve

Input: 4000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d timeout 0.0ms 0.0MB 0ms 0ms dmd 2.100.0
1.d timeout 0.0ms 0.0MB 0ms 0ms ldc2 1.29.0

Input: 1000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 1537ms 15ms 10.3MB 1513ms 7ms ldc2 1.29.0
1.d 2073ms 22ms 9.4MB 2040ms 13ms dmd 2.100.0

edigits

Input: 250001

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d timeout 0.0ms 0.0MB 0ms 0ms dmd 2.100.0
1.d timeout 0.0ms 0.0MB 0ms 0ms ldc2 1.29.0

Input: 100000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 1126ms 2.1ms 7.5MB 1107ms 0ms ldc2 1.29.0
1.d 1335ms 13ms 8.5MB 1320ms 0ms dmd 2.100.0

helloworld

Input: QwQ

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 2.5ms 0.3ms 3.0MB 0ms 0ms ldc2 1.29.0
1.d 3.4ms 0.7ms 3.9MB 0ms 0ms dmd 2.100.0

lru

Input: 1000 1000000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 214ms 0.4ms 4.1MB 203ms 0ms ldc2 1.29.0
1.d 308ms 1.7ms 4.8MB 290ms 0ms dmd 2.100.0

Input: 1000 3000000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 645ms 8.2ms 4.1MB 633ms 0ms ldc2 1.29.0
1.d 923ms 12ms 4.8MB 910ms 0ms dmd 2.100.0

Input: 100 500000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 95ms 1.3ms 3.9MB 87ms 0ms ldc2 1.29.0
1.d 140ms 1.1ms 4.9MB 130ms 0ms dmd 2.100.0

merkletrees

Input: 17

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 2018ms 13ms 75.1MB 2083ms 23ms ldc2 1.29.0
1.d 3432ms 20ms 153.6MB 3790ms 50ms dmd 2.100.0

Input: 15

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 392ms 7.3ms 39.0MB 380ms 3ms ldc2 1.29.0
1.d 716ms 7.7ms 39.9MB 763ms 13ms dmd 2.100.0

nbody

Input: 5000000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 565ms 2.1ms 1.2MB 550ms 0ms ldc2 1.29.0
2.d 595ms 3.2ms 1.2MB 583ms 0ms ldc2 1.29.0
1.d 1519ms 17ms 1.9MB 1500ms 0ms dmd 2.100.0
2.d 3556ms 23ms 2.0MB 3543ms 0ms dmd 2.100.0

Input: 500000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 61ms 0.8ms 1.2MB 47ms 0ms ldc2 1.29.0
2.d 63ms 0.5ms 1.2MB 50ms 0ms ldc2 1.29.0
1.d 155ms 1.0ms 2.0MB 140ms 0ms dmd 2.100.0
2.d 362ms 5.2ms 1.9MB 350ms 0ms dmd 2.100.0

nsieve

Input: 12

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
2.d 1057ms 7.0ms 48.7MB 1023ms 17ms ldc2 1.29.0
1.d 1165ms 35ms 43.8MB 1133ms 17ms ldc2 1.29.0
1.d 1225ms 11ms 75.3MB 1190ms 20ms dmd 2.100.0
2.d 2117ms 16ms 49.4MB 2083ms 17ms dmd 2.100.0

Input: 10

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 156ms 3.2ms 13.8MB 140ms 0ms ldc2 1.29.0
1.d 184ms 4.8ms 23.4MB 167ms 0ms dmd 2.100.0
2.d 247ms 1.5ms 15.6MB 223ms 7ms ldc2 1.29.0
2.d 523ms 2.4ms 16.6MB 503ms 3ms dmd 2.100.0

pidigits

Input: 8000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 4292ms 20ms 7.8MB 4327ms 33ms ldc2 1.29.0
1.d timeout 0.0ms 0.0MB 0ms 0ms dmd 2.100.0

Input: 4000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 1028ms 15ms 7.9MB 1030ms 0ms ldc2 1.29.0
1.d 1803ms 37ms 9.0MB 1797ms 13ms dmd 2.100.0

spectral-norm

Input: 8000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 4776ms 19ms 3.7MB 4763ms 0ms ldc2 1.29.0
1.d timeout 0.0ms 0.0MB 0ms 0ms dmd 2.100.0

Input: 4000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 1201ms 13ms 3.5MB 1187ms 0ms ldc2 1.29.0
1.d 1360ms 5.3ms 4.5MB 1347ms 0ms dmd 2.100.0

Input: 2000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.d 306ms 1.3ms 3.3MB 300ms 0ms ldc2 1.29.0
1.d 346ms 1.7ms 4.1MB 333ms 0ms dmd 2.100.0