Julia VS Typescript benchmarks

Current benchmark data was generated on Mon Feb 06 2023, full log can be found HERE

CONTRIBUTIONS are WELCOME!

[x86_64][2 cores] Intel(R) Xeon(R) Platinum 8272CL 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.)

helloworld

Input: QwQ

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
typescript 1.ts 25ms 0.6ms 32.7MB 10ms 0ms deno 1.30.2
julia 1.jl 211ms 11ms 166.7MB 103ms 110ms julia/aot 1.8.5
julia 1.jl 226ms 7.5ms 171.7MB 130ms 104ms julia 1.8.5

nbody

Input: 5000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 7.jl 551ms 2.0ms 168.3MB 490ms 147ms julia/aot 1.8.5
julia 7.jl 716ms 7.3ms 223.4MB 647ms 150ms julia 1.8.5
typescript 6.ts 751ms 8.4ms 37.1MB 737ms 0ms deno 1.30.2

Input: 500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
typescript 6.ts 107ms 4.2ms 37.2MB 97ms 0ms deno 1.30.2
julia 7.jl 271ms 3.4ms 170.4MB 197ms 143ms julia/aot 1.8.5
julia 7.jl 435ms 3.0ms 225.1MB 367ms 150ms julia 1.8.5

nsieve

Input: 12

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 1.jl 439ms 1.7ms 156.1MB 383ms 140ms julia/aot 1.8.5
julia 1.jl 557ms 3.6ms 201.2MB 487ms 153ms julia 1.8.5

Input: 10

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 1.jl 240ms 0.8ms 150.3MB 173ms 107ms julia/aot 1.8.5
julia 1.jl 361ms 2.5ms 197.4MB 303ms 143ms julia 1.8.5

binarytrees

Input: 18

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 4.jl 1231ms 4.7ms 241.4MB 1120ms 197ms julia 1.8.5
typescript 1.ts 4002ms 113ms 127.2MB 4077ms 633ms deno 1.30.2

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
typescript 1.ts 196ms 4.2ms 56.7MB 223ms 13ms deno 1.30.2
julia 4.jl 343ms 1.7ms 219.2MB 270ms 157ms julia 1.8.5

fannkuch-redux

Input: 11

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 2-m.jl 1676ms 9.2ms 211.9MB 2847ms 160ms julia 1.8.5

Input: 10

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 2-m.jl 562ms 2.3ms 209.7MB 690ms 153ms julia 1.8.5

fasta

Input: 2500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 7-m.jl 676ms 2.2ms 302.8MB 877ms 187ms julia 1.8.5
typescript 1.ts 2140ms 80ms 38.4MB 2007ms 113ms deno 1.30.2

Input: 250000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
typescript 1.ts 272ms 14ms 38.7MB 220ms 17ms deno 1.30.2
julia 7.jl 501ms 1.6ms 221.6MB 617ms 130ms julia 1.8.5

knucleotide

Input: 2500000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 8.jl 1218ms 8.6ms 273.9MB 1553ms 187ms julia 1.8.5

Input: 250000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 8.jl 846ms 13ms 267.0MB 930ms 153ms julia 1.8.5

pidigits

Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 3.jl 722ms 3.3ms 176.1MB 667ms 140ms julia 1.8.5
julia 1.jl 1553ms 16ms 260.9MB 1447ms 190ms julia 1.8.5
typescript 3.ts timeout 0.0ms 79.1MB 4950ms 37ms deno 1.30.2

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 3.jl 354ms 0.7ms 174.9MB 277ms 163ms julia 1.8.5
julia 1.jl 916ms 52ms 260.0MB 790ms 187ms julia 1.8.5
typescript 3.ts 1466ms 19ms 57.6MB 1403ms 73ms deno 1.30.2

spectral-norm

Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 2-m.jl 1237ms 1.0ms 193.9MB 2083ms 140ms julia 1.8.5
julia 3-m.jl 2142ms 2.6ms 211.2MB 3783ms 160ms julia 1.8.5
typescript 7.ts timeout 0.0ms 39.1MB 4987ms 3ms deno 1.30.2

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 2-m.jl 571ms 2.5ms 192.3MB 777ms 147ms julia 1.8.5
julia 3-m.jl 855ms 17ms 210.0MB 1257ms 160ms julia 1.8.5
typescript 7.ts 1361ms 17ms 37.9MB 1340ms 7ms deno 1.30.2

Input: 2000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
julia 2.jl 408ms 1.0ms 194.4MB 473ms 127ms julia 1.8.5
typescript 7.ts 423ms 66ms 38.3MB 353ms 13ms deno 1.30.2
julia 3.jl 519ms 5.1ms 210.5MB 603ms 167ms julia 1.8.5