C# VS Go benchmarks

Current benchmark data was generated on Tue Mar 25 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
csharp 1.cs 987ms 29ms 207.3MB 987ms 150ms dotnet 9.0.202
csharp 1.cs 1059ms 17ms 186.1MB 1060ms 143ms dotnet/aot 9.0.202
go 1.go 1269ms 2.1ms 54.9MB 1247ms 7ms tinygo 0.37.0
csharp 1.cs 1745ms 50ms 99.7MB 1947ms 213ms mono 6.12.0
go 1-m.go 2414ms 64ms 46.3MB 5500ms 40ms go 1.24.1

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1.go 117ms 2.2ms 5.6MB 107ms 0ms tinygo 0.37.0
csharp 1.cs 132ms 9.0ms 34.1MB 97ms 30ms dotnet/aot 9.0.202
csharp 1.cs 151ms 3.1ms 44.1MB 127ms 10ms mono 6.12.0
csharp 1.cs 202ms 3.4ms 50.0MB 160ms 37ms dotnet 9.0.202
go 1-m.go 211ms 1.3ms 7.9MB 373ms 10ms go 1.24.1

coro-prime-sieve

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1-m.go 457ms 43ms 14.8MB 1773ms 0ms go 1.24.1
go 1.go 741ms 2.7ms 269.0MB 683ms 43ms tinygo 0.37.0
csharp 1-m.cs 2245ms 111ms 50.1MB 7953ms 83ms dotnet/aot 9.0.202
csharp 1-m.cs 2817ms 51ms 72.8MB 8863ms 100ms dotnet 9.0.202

Input: 1000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1-m.go 42ms 3.4ms 7.5MB 137ms 0ms go 1.24.1
go 1.go 73ms 2.2ms 68.8MB 50ms 10ms tinygo 0.37.0
csharp 1-m.cs 169ms 13ms 18.8MB 480ms 20ms dotnet/aot 9.0.202
csharp 1-m.cs 272ms 7.4ms 37.8MB 760ms 20ms dotnet 9.0.202

edigits

Input: 250001

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1.go 120ms 0.5ms 10.3MB 110ms 0ms go 1.24.1
csharp 1.cs 4104ms 3.1ms 18.4MB 4080ms 10ms dotnet/aot 9.0.202
csharp 1.cs 4967ms 13ms 37.5MB 4937ms 20ms dotnet 9.0.202

Input: 100000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1.go 34ms 0.7ms 8.2MB 30ms 0ms go 1.24.1
csharp 1.cs 682ms 1.1ms 14.5MB 663ms 3ms dotnet/aot 9.0.202
csharp 1.cs 869ms 16ms 34.0MB 843ms 10ms dotnet 9.0.202

fasta

Input: 2500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 3-m.go 127ms 1.0ms 7.5MB 377ms 3ms go 1.24.1
csharp 5-m.cs 129ms 4.7ms 26.3MB 357ms 83ms dotnet/aot 9.0.202
csharp 5-m.cs 201ms 12ms 39.6MB 470ms 117ms dotnet 9.0.202
csharp 5-m.cs 235ms 14ms 38.1MB 660ms 93ms mono 6.12.0

Input: 250000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 3-m.go 17ms 0.2ms 7.5MB 33ms 0ms go 1.24.1
csharp 5-m.cs 25ms 1.9ms 16.5MB 33ms 20ms dotnet/aot 9.0.202
csharp 5-m.cs 62ms 1.0ms 37.3MB 87ms 20ms dotnet 9.0.202
csharp 5-m.cs 72ms 0.5ms 31.5MB 103ms 27ms mono 6.12.0

helloworld

Input: QwQ

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1.go 0.9ms 0.1ms 0.4MB 0ms 0ms tinygo 0.37.0
go 1.go 1.3ms 0.7ms 3.4MB 0ms 0ms go 1.24.1
csharp 1.cs 8.7ms 2.7ms 9.4MB 0ms 0ms dotnet/aot 9.0.202
csharp 1.cs 32ms 0.6ms 21.6MB 20ms 0ms mono 6.12.0
csharp 1.cs 36ms 1.2ms 26.1MB 20ms 6ms dotnet 9.0.202

http-server

Input: 3000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1-http2.go 123ms 7.0ms 56.3MB 340ms 93ms go 1.24.1
go 1-m.go 427ms 28ms 170.8MB 743ms 673ms go 1.24.1
go 2-m.go 435ms 0.9ms 168.4MB 703ms 713ms go 1.24.1
csharp 2-http2.cs 522ms 8.7ms 108.4MB 740ms 150ms dotnet 9.0.202
csharp 2-m.cs 593ms 47ms 139.9MB 757ms 527ms dotnet 9.0.202
csharp 2-http3.cs 681ms 9.8ms 143.6MB 1147ms 247ms dotnet 9.0.202
csharp 1-m.cs 760ms 45ms 167.5MB 1197ms 743ms dotnet 9.0.202

Input: 500

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1-http2.go 30ms 1.4ms 25.6MB 53ms 20ms go 1.24.1
go 1-m.go 76ms 6.3ms 36.7MB 100ms 110ms go 1.24.1
go 2-m.go 77ms 12ms 33.7MB 93ms 120ms go 1.24.1
csharp 2-m.cs 360ms 6.9ms 87.0MB 400ms 183ms dotnet 9.0.202
csharp 1-m.cs 407ms 5.7ms 97.6MB 537ms 237ms dotnet 9.0.202
csharp 2-http2.cs 454ms 11ms 86.1MB 523ms 87ms dotnet 9.0.202
csharp 2-http3.cs 515ms 4.0ms 93.7MB 603ms 123ms dotnet 9.0.202

json-serde

Input: sample 5000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 2-ffi.go 47ms 2.4ms 41.1MB 37ms 7ms go 1.24.1
go 1.go 144ms 4.5ms 18.8MB 137ms 0ms go 1.24.1
csharp 2.cs 308ms 3.9ms 69.0MB 277ms 30ms dotnet 9.0.202
csharp 1.cs 811ms 82ms 143.7MB 847ms 90ms dotnet 9.0.202

Input: canada 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 2-ffi.go 255ms 13ms 151.3MB 243ms 50ms go 1.24.1
go 1.go 760ms 6.5ms 107.0MB 747ms 13ms go 1.24.1
csharp 2.cs 1626ms 110ms 235.0MB 1807ms 103ms dotnet 9.0.202
csharp 1.cs 2704ms 68ms 728.7MB 3260ms 443ms dotnet 9.0.202

knucleotide

Input: 2500000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 6-m.cs 455ms 4.7ms 46.3MB 1203ms 17ms dotnet/aot 9.0.202
go 7-m.go 689ms 8.1ms 40.1MB 2413ms 33ms go 1.24.1
csharp 6-m.cs 766ms 12ms 68.1MB 2110ms 37ms dotnet 9.0.202
csharp 6-m.cs 1021ms 12ms 68.9MB 2963ms 27ms mono 6.12.0

Input: 250000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 6-m.cs 95ms 5.4ms 36.4MB 153ms 17ms dotnet/aot 9.0.202
go 7-m.go 131ms 3.0ms 22.7MB 347ms 20ms go 1.24.1
csharp 6-m.cs 180ms 2.8ms 57.0MB 273ms 30ms dotnet 9.0.202
csharp 6-m.cs 200ms 4.3ms 58.4MB 383ms 20ms mono 6.12.0

lru

Input: 1000 1000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 2.cs 97ms 3.1ms 9.8MB 87ms 0ms dotnet/aot 9.0.202
go 3.go 123ms 2.4ms 3.5MB 113ms 0ms go 1.24.1
go 3.go 134ms 3.6ms 0.5MB 127ms 0ms tinygo 0.37.0
csharp 2.cs 148ms 3.1ms 22.8MB 137ms 0ms mono 6.12.0
csharp 2.cs 253ms 2.7ms 29.5MB 240ms 7ms dotnet 9.0.202
csharp 1.cs 1059ms 4.4ms 13.3MB 1040ms 3ms dotnet/aot 9.0.202
csharp 1.cs 1330ms 8.7ms 32.6MB 1317ms 13ms dotnet 9.0.202
csharp 1.cs 3392ms 39ms 47.5MB 3350ms 33ms mono 6.12.0

Input: 1000 3000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 2.cs 270ms 2.8ms 9.8MB 257ms 0ms dotnet/aot 9.0.202
csharp 2.cs 364ms 2.7ms 21.3MB 350ms 0ms mono 6.12.0
go 3.go 385ms 7.4ms 3.5MB 377ms 0ms go 1.24.1
go 3.go 389ms 4.4ms 0.5MB 377ms 0ms tinygo 0.37.0
csharp 2.cs 407ms 7.8ms 29.1MB 390ms 10ms dotnet 9.0.202
csharp 1.cs 3140ms 32ms 13.3MB 3113ms 17ms dotnet/aot 9.0.202
csharp 1.cs 3697ms 152ms 32.9MB 3680ms 23ms dotnet 9.0.202
csharp 1.cs timeout 0.0ms 45.6MB 4943ms 47ms mono 6.12.0

Input: 100 500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 3.go 52ms 2.6ms 3.5MB 43ms 0ms go 1.24.1
csharp 2.cs 53ms 2.4ms 9.8MB 40ms 0ms dotnet/aot 9.0.202
go 3.go 65ms 2.0ms 0.4MB 57ms 0ms tinygo 0.37.0
csharp 2.cs 94ms 2.5ms 21.1MB 80ms 0ms mono 6.12.0
csharp 2.cs 162ms 2.3ms 29.1MB 143ms 7ms dotnet 9.0.202
csharp 1.cs 1629ms 4.7ms 32.5MB 1620ms 13ms dotnet 9.0.202
csharp 1.cs 1805ms 4.0ms 12.9MB 1787ms 3ms dotnet/aot 9.0.202
csharp 1.cs 1830ms 4.2ms 26.7MB 1813ms 0ms mono 6.12.0

mandelbrot

Input: 5000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 4.cs 344ms 11ms 37.3MB 323ms 10ms dotnet 9.0.202
csharp 2.cs 562ms 60ms 39.7MB 537ms 20ms dotnet 9.0.202
csharp 1.cs 2042ms 11ms 36.6MB 2020ms 10ms dotnet 9.0.202
csharp 3.cs 2349ms 4.2ms 16.5MB 2330ms 3ms dotnet/aot 9.0.202
csharp 3.cs 2458ms 0.7ms 36.4MB 2433ms 10ms dotnet 9.0.202
go 1.go 3230ms 5.6ms 7.7MB 3220ms 0ms go 1.24.1
csharp 1.cs 3869ms 62ms 16.4MB 3857ms 0ms dotnet/aot 9.0.202
go 1.go 4083ms 22ms 3.4MB 4073ms 0ms tinygo 0.37.0
csharp 1.cs timeout 0.0ms 23.2MB 4990ms 0ms mono 6.12.0

Input: 1000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 4.cs 81ms 1.1ms 34.3MB 57ms 13ms dotnet 9.0.202
csharp 3.cs 110ms 3.4ms 13.6MB 97ms 0ms dotnet/aot 9.0.202
csharp 2.cs 118ms 6.1ms 36.9MB 93ms 10ms dotnet 9.0.202
go 1.go 139ms 2.7ms 3.6MB 130ms 0ms go 1.24.1
csharp 1.cs 143ms 4.8ms 33.4MB 120ms 10ms dotnet 9.0.202
csharp 3.cs 168ms 2.2ms 33.6MB 147ms 7ms dotnet 9.0.202
go 1.go 170ms 0.3ms 0.5MB 160ms 0ms tinygo 0.37.0
csharp 1.cs 172ms 2.8ms 13.1MB 160ms 0ms dotnet/aot 9.0.202
csharp 1.cs 572ms 2.7ms 23.9MB 557ms 0ms mono 6.12.0

merkletrees

Input: 17

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 2.cs 584ms 14ms 120.7MB 530ms 90ms dotnet/aot 9.0.202
csharp 1.cs 643ms 4.4ms 149.1MB 590ms 130ms dotnet/aot 9.0.202
csharp 2.cs 676ms 4.0ms 135.9MB 640ms 93ms dotnet 9.0.202
csharp 1.cs 786ms 10ms 170.1MB 717ms 137ms dotnet 9.0.202
go 1.go 886ms 4.8ms 63.1MB 863ms 10ms tinygo 0.37.0
go 2.go 1140ms 2.7ms 55.0MB 1113ms 10ms tinygo 0.37.0
csharp 1.cs 1310ms 9.0ms 139.7MB 1530ms 160ms mono 6.12.0
go 1-m.go 1477ms 1.1ms 45.0MB 3100ms 50ms go 1.24.1
go 2-m.go 1708ms 9.0ms 40.9MB 3773ms 33ms go 1.24.1

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 2.cs 146ms 5.1ms 56.7MB 110ms 40ms dotnet/aot 9.0.202
csharp 1.cs 162ms 5.8ms 74.4MB 130ms 47ms dotnet/aot 9.0.202
go 1.go 175ms 2.5ms 9.8MB 160ms 0ms tinygo 0.37.0
go 2.go 209ms 3.5ms 17.1MB 193ms 0ms tinygo 0.37.0
csharp 1.cs 266ms 4.9ms 69.5MB 233ms 37ms mono 6.12.0
csharp 2.cs 266ms 1.7ms 74.3MB 227ms 37ms dotnet 9.0.202
csharp 1.cs 276ms 1.3ms 89.6MB 247ms 53ms dotnet 9.0.202
go 1-m.go 343ms 10ms 12.3MB 687ms 17ms go 1.24.1
go 2-m.go 376ms 1.3ms 14.0MB 800ms 27ms go 1.24.1

nbody

Input: 5000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1.go 350ms 2.9ms 0.4MB 340ms 0ms tinygo 0.37.0
go 1.go 352ms 2.1ms 3.5MB 343ms 0ms go 1.24.1
csharp 9.cs 364ms 3.9ms 27.8MB 340ms 7ms dotnet 9.0.202
csharp 8.cs 372ms 2.5ms 9.9MB 357ms 0ms dotnet/aot 9.0.202
csharp 8.cs 422ms 2.6ms 27.5MB 400ms 10ms dotnet 9.0.202
csharp 8.cs 1256ms 5.3ms 22.3MB 1240ms 3ms mono 6.12.0

Input: 500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1.go 37ms 0.8ms 0.4MB 30ms 0ms tinygo 0.37.0
go 1.go 39ms 1.2ms 3.5MB 30ms 0ms go 1.24.1
csharp 8.cs 47ms 0.7ms 9.8MB 30ms 0ms dotnet/aot 9.0.202
csharp 8.cs 96ms 1.3ms 27.5MB 80ms 10ms dotnet 9.0.202
csharp 9.cs 97ms 4.6ms 27.8MB 73ms 10ms dotnet 9.0.202
csharp 8.cs 165ms 1.2ms 20.8MB 150ms 0ms mono 6.12.0

nsieve

Input: 12

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1.go 298ms 11ms 39.8MB 287ms 0ms tinygo 0.37.0
go 1.go 319ms 10ms 71.7MB 300ms 3ms go 1.24.1
csharp 1.cs 350ms 3.6ms 78.7MB 327ms 10ms dotnet/aot 9.0.202
csharp 1.cs 399ms 20ms 96.2MB 373ms 17ms dotnet 9.0.202
csharp 2.cs 401ms 3.8ms 35.7MB 380ms 10ms dotnet 9.0.202
csharp 2.cs 425ms 3.0ms 17.4MB 413ms 0ms dotnet/aot 9.0.202
go 2.go 429ms 0.7ms 20.3MB 420ms 0ms tinygo 0.37.0
csharp 1.cs 564ms 2.7ms 83.9MB 543ms 10ms mono 6.12.0
go 2.go 746ms 4.0ms 21.5MB 733ms 3ms go 1.24.1
csharp 2.cs 1867ms 2.9ms 29.4MB 1850ms 0ms mono 6.12.0

Input: 10

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1.go 54ms 3.4ms 10.1MB 43ms 0ms tinygo 0.37.0
go 1.go 59ms 3.4ms 21.7MB 50ms 0ms go 1.24.1
csharp 1.cs 69ms 1.7ms 24.8MB 50ms 0ms dotnet/aot 9.0.202
csharp 1.cs 107ms 5.9ms 42.4MB 87ms 10ms dotnet 9.0.202
go 2.go 108ms 0.7ms 4.9MB 100ms 0ms tinygo 0.37.0
csharp 2.cs 112ms 3.0ms 11.8MB 97ms 0ms dotnet/aot 9.0.202
csharp 2.cs 131ms 2.0ms 29.9MB 110ms 13ms dotnet 9.0.202
csharp 1.cs 143ms 0.4ms 38.5MB 130ms 0ms mono 6.12.0
go 2.go 184ms 1.0ms 6.1MB 173ms 0ms go 1.24.1
csharp 2.cs 486ms 4.3ms 23.1MB 470ms 0ms mono 6.12.0

pidigits

Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 8.go 1188ms 4.7ms 8.6MB 1177ms 0ms go 1.24.1
csharp 1.cs 3274ms 18ms 13.9MB 3170ms 103ms dotnet/aot 9.0.202
csharp 1.cs 3581ms 55ms 38.1MB 3593ms 127ms dotnet 9.0.202

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 8.go 282ms 2.2ms 8.6MB 270ms 0ms go 1.24.1
csharp 1.cs 760ms 1.6ms 13.5MB 723ms 23ms dotnet/aot 9.0.202
csharp 1.cs 993ms 12ms 37.8MB 1093ms 37ms dotnet 9.0.202

regex-redux

Input: 2500000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 6.cs 1772ms 2.8ms 418.4MB 1670ms 153ms dotnet/aot 9.0.202
csharp 5.cs 2097ms 27ms 445.0MB 2143ms 193ms dotnet 9.0.202
csharp 6.cs 2712ms 14ms 440.8MB 2663ms 170ms dotnet 9.0.202
csharp 5.cs 4384ms 78ms 419.4MB 4280ms 153ms dotnet/aot 9.0.202
go 3.go timeout 0.0ms 122.3MB 4977ms 50ms go 1.24.1
go 3.go timeout 0.0ms 135.0MB 4973ms 10ms tinygo 0.37.0

Input: 250000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 6.cs 191ms 2.2ms 47.5MB 167ms 17ms dotnet/aot 9.0.202
csharp 5.cs 299ms 1.6ms 72.7MB 270ms 33ms dotnet 9.0.202
csharp 6.cs 395ms 5.4ms 70.3MB 363ms 27ms dotnet 9.0.202
csharp 5.cs 445ms 2.1ms 47.0MB 420ms 17ms dotnet/aot 9.0.202
go 3.go 1778ms 45ms 20.0MB 1760ms 27ms go 1.24.1
go 3.go 2278ms 37ms 27.6MB 2260ms 3ms tinygo 0.37.0

secp256k1

Input: 2000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 0-ffi.go 91ms 1.2ms 7.3MB 83ms 0ms go 1.24.1
csharp 1.cs 2855ms 23ms 13.0MB 2817ms 27ms dotnet/aot 9.0.202
csharp 1.cs 2964ms 16ms 35.3MB 3037ms 40ms dotnet 9.0.202

Input: 500

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 0-ffi.go 25ms 0.5ms 5.2MB 20ms 0ms go 1.24.1
csharp 1.cs 723ms 0.6ms 13.1MB 700ms 10ms dotnet/aot 9.0.202
csharp 1.cs 1007ms 8.8ms 35.4MB 1100ms 20ms dotnet 9.0.202

spectral-norm

Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 3-m.cs 1878ms 31ms 10.4MB 7237ms 7ms dotnet/aot 9.0.202
go 4-m.go 1909ms 14ms 5.4MB 7403ms 3ms go 1.24.1
csharp 3-m.cs 2004ms 130ms 29.9MB 7250ms 13ms dotnet 9.0.202
go 1.go 3659ms 17ms 5.5MB 3650ms 3ms go 1.24.1
csharp 3-m.cs 4769ms 182ms 27.6MB 18443ms 23ms mono 6.12.0
go 1.go timeout 0.0ms 0.5MB 4990ms 0ms tinygo 0.37.0

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 3-m.cs 476ms 2.3ms 10.3MB 1813ms 3ms dotnet/aot 9.0.202
go 4-m.go 481ms 0.7ms 5.5MB 1840ms 0ms go 1.24.1
csharp 3-m.cs 532ms 2.2ms 29.9MB 1877ms 13ms dotnet 9.0.202
go 1.go 916ms 2.1ms 3.5MB 907ms 0ms go 1.24.1
csharp 3-m.cs 1261ms 106ms 27.4MB 4513ms 7ms mono 6.12.0
go 1.go 1397ms 0.6ms 0.5MB 1390ms 0ms tinygo 0.37.0

Input: 2000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 4-m.go 125ms 0.9ms 5.6MB 457ms 0ms go 1.24.1
csharp 3-m.cs 128ms 0.9ms 10.3MB 447ms 3ms dotnet/aot 9.0.202
csharp 3-m.cs 178ms 0.4ms 28.5MB 500ms 13ms dotnet 9.0.202
go 1.go 232ms 1.7ms 3.5MB 223ms 0ms go 1.24.1
go 1.go 351ms 0.3ms 0.4MB 340ms 0ms tinygo 0.37.0
csharp 3-m.cs 352ms 1.3ms 25.5MB 1173ms 10ms mono 6.12.0