Go VS C# 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.)

binarytrees

Input: 18

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 1.cs 1487ms 35ms 306.6MB 1350ms 213ms dotnet/aot 7.0.102
csharp 1.cs 1715ms 29ms 426.3MB 1513ms 263ms dotnet 7.0.102
csharp 1.cs 2432ms 49ms 104.6MB 2877ms 213ms mono 6.12.0
go 1.go 3238ms 18ms 44.6MB 4600ms 63ms go 1.19.5
go 1.go 4368ms 14ms 39.4MB 4343ms 10ms tinygo 0.25.0

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 1.cs 144ms 6.2ms 59.4MB 120ms 17ms dotnet/aot 7.0.102
csharp 1.cs 166ms 4.5ms 46.1MB 137ms 20ms mono 6.12.0
go 1.go 277ms 2.4ms 8.2MB 353ms 10ms go 1.19.5
csharp 1.cs 281ms 3.2ms 151.0MB 200ms 53ms dotnet 7.0.102
go 1.go 391ms 3.0ms 6.6MB 383ms 0ms tinygo 0.25.0

coro-prime-sieve

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1-m.go 909ms 184ms 13.4MB 1750ms 3ms go 1.19.5
go 1.go 2254ms 7.2ms 253.7MB 2167ms 67ms tinygo 0.25.0
csharp 1.cs timeout 0.0ms 159.7MB 9273ms 90ms dotnet 7.0.102
csharp 1.cs timeout 0.0ms 66.7MB 9393ms 50ms dotnet/aot 7.0.102

Input: 1000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1-m.go 64ms 6.1ms 5.4MB 103ms 0ms go 1.19.5
go 1.go 306ms 2.0ms 65.6MB 277ms 13ms tinygo 0.25.0
csharp 1-m.cs 384ms 14ms 52.2MB 663ms 27ms dotnet/aot 7.0.102
csharp 1-m.cs 619ms 42ms 143.6MB 960ms 63ms dotnet 7.0.102

edigits

Input: 250001

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1.go 168ms 3.0ms 8.3MB 153ms 3ms go 1.19.5
csharp 1.cs timeout 0.0ms 109.7MB 4953ms 23ms dotnet 7.0.102
csharp 1.cs timeout 0.0ms 22.7MB 4990ms 0ms dotnet/aot 7.0.102

Input: 100000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1.go 49ms 0.9ms 8.9MB 37ms 0ms go 1.19.5
csharp 1.cs 847ms 2.4ms 19.3MB 837ms 0ms dotnet/aot 7.0.102
csharp 1.cs 959ms 5.1ms 109.5MB 900ms 30ms dotnet 7.0.102

fannkuch-redux

Input: 11

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 3-m.go 1212ms 0.4ms 5.0MB 2333ms 7ms go 1.19.5
go 3.go 2703ms 0.7ms 50.0MB 2677ms 7ms tinygo 0.25.0

Input: 10

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 3.go 129ms 1.8ms 5.0MB 187ms 3ms go 1.19.5
go 3.go 299ms 0.2ms 48.6MB 273ms 10ms tinygo 0.25.0

fasta

Input: 2500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 3-m.go 209ms 0.6ms 2.9MB 373ms 0ms go 1.19.5
csharp 5-m.cs 316ms 19ms 47.2MB 503ms 90ms dotnet/aot 7.0.102
csharp 5-m.cs 544ms 24ms 61.2MB 910ms 113ms mono 6.12.0
csharp 5-m.cs 569ms 35ms 171.4MB 853ms 150ms dotnet 7.0.102

Input: 250000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 3.go 29ms 1.6ms 2.9MB 33ms 0ms go 1.19.5
csharp 5.cs 49ms 1.7ms 21.3MB 57ms 13ms dotnet/aot 7.0.102
csharp 5.cs 96ms 10ms 39.2MB 113ms 30ms mono 6.12.0
csharp 5.cs 143ms 4.6ms 114.0MB 117ms 53ms dotnet 7.0.102

helloworld

Input: QwQ

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1.go 2.2ms 0.5ms 2.0MB 0ms 0ms tinygo 0.25.0
go 1.go 2.6ms 0.2ms 3.3MB 0ms 0ms go 1.19.5
csharp 1.cs 6.8ms 0.7ms 12.1MB 0ms 0ms dotnet/aot 7.0.102
csharp 1.cs 21ms 0.6ms 25.6MB 10ms 0ms mono 6.12.0
csharp 1.cs 79ms 2.2ms 101.4MB 28ms 26ms dotnet 7.0.102

http-server

Input: 3000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1-http2.go 193ms 7.2ms 54.4MB 277ms 60ms go 1.19.5
go 2-m.go 688ms 22ms 170.2MB 600ms 493ms go 1.19.5
go 1-m.go 710ms 40ms 175.9MB 710ms 427ms go 1.19.5
csharp 2-http2.cs 947ms 15ms 198.0MB 970ms 137ms dotnet 7.0.102
csharp 2.cs 996ms 24ms 244.1MB 853ms 527ms dotnet 7.0.102
csharp 1.cs 1358ms 118ms 249.1MB 1027ms 617ms dotnet 7.0.102
csharp 2-http3.cs 1383ms 20ms 269.8MB 1540ms 367ms dotnet 7.0.102

Input: 500

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1-http2.go 48ms 3.3ms 24.8MB 50ms 10ms go 1.19.5
go 2.go 141ms 9.7ms 39.4MB 103ms 73ms go 1.19.5
go 1.go 149ms 17ms 38.9MB 103ms 70ms go 1.19.5
csharp 2.cs 518ms 16ms 158.5MB 410ms 143ms dotnet 7.0.102
csharp 1.cs 598ms 17ms 167.5MB 550ms 193ms dotnet 7.0.102
csharp 2-http2.cs 822ms 2.6ms 164.6MB 777ms 93ms dotnet 7.0.102
csharp 2-http3.cs 896ms 4.7ms 180.4MB 850ms 163ms dotnet 7.0.102

json-serde

Input: sample 5000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 2-ffi.go 80ms 2.9ms 41.7MB 57ms 17ms go 1.19.5
go 1.go 182ms 1.9ms 18.6MB 167ms 7ms go 1.19.5
csharp 2.cs 413ms 9.4ms 146.7MB 337ms 60ms dotnet 7.0.102
csharp 1.cs 709ms 7.7ms 218.7MB 670ms 90ms dotnet 7.0.102

Input: canada 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 2-ffi.go 407ms 13ms 164.0MB 380ms 97ms go 1.19.5
go 1.go 1073ms 7.2ms 103.6MB 1047ms 60ms go 1.19.5
csharp 2.cs 1856ms 53ms 346.0MB 1987ms 143ms dotnet 7.0.102
csharp 1.cs 2972ms 9.9ms 862.9MB 2887ms 410ms dotnet 7.0.102

knucleotide

Input: 2500000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 6.cs 1021ms 26ms 51.9MB 1473ms 23ms dotnet/aot 7.0.102
csharp 6-m.cs 1387ms 9.1ms 148.2MB 2387ms 53ms dotnet 7.0.102
go 7-m.go 1422ms 15ms 41.6MB 2607ms 33ms go 1.19.5
csharp 6-m.cs 1868ms 29ms 70.5MB 3010ms 30ms mono 6.12.0

Input: 250000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 6.cs 162ms 8.1ms 40.7MB 177ms 20ms dotnet/aot 7.0.102
go 7-m.go 241ms 4.9ms 23.9MB 353ms 23ms go 1.19.5
csharp 6.cs 271ms 7.4ms 51.6MB 363ms 13ms mono 6.12.0
csharp 6.cs 309ms 2.5ms 132.8MB 337ms 43ms dotnet 7.0.102

lru

Input: 1000 1000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 2.cs 138ms 1.7ms 10.0MB 133ms 0ms dotnet/aot 7.0.102
go 3.go 161ms 1.4ms 0.3MB 150ms 0ms tinygo 0.25.0
go 3.go 168ms 1.8ms 2.9MB 160ms 0ms go 1.19.5
csharp 2.cs 196ms 1.8ms 25.4MB 173ms 7ms mono 6.12.0
csharp 2.cs 228ms 3.3ms 102.0MB 180ms 20ms dotnet 7.0.102
csharp 1.cs 1582ms 3.0ms 60.1MB 1560ms 20ms dotnet/aot 7.0.102
csharp 1.cs 1737ms 17ms 150.1MB 1657ms 63ms dotnet 7.0.102
csharp 1.cs 3349ms 1.6ms 47.6MB 3303ms 40ms mono 6.12.0

Input: 1000 3000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 2.cs 400ms 7.6ms 8.2MB 393ms 0ms dotnet/aot 7.0.102
csharp 2.cs 458ms 2.7ms 102.2MB 397ms 33ms dotnet 7.0.102
go 3.go 475ms 1.0ms 0.3MB 463ms 0ms tinygo 0.25.0
go 3.go 495ms 1.0ms 4.8MB 480ms 0ms go 1.19.5
csharp 2.cs 526ms 2.5ms 24.9MB 510ms 0ms mono 6.12.0
csharp 1.cs 4665ms 7.4ms 58.3MB 4643ms 13ms dotnet/aot 7.0.102
csharp 1.cs 4831ms 4.1ms 145.1MB 4760ms 60ms dotnet 7.0.102
csharp 1.cs timeout 0.0ms 49.7MB 4947ms 43ms mono 6.12.0

Input: 100 500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 2.cs 73ms 3.0ms 12.2MB 70ms 0ms dotnet/aot 7.0.102
go 3.go 83ms 0.5ms 2.0MB 70ms 0ms tinygo 0.25.0
go 3.go 92ms 1.8ms 4.1MB 80ms 0ms go 1.19.5
csharp 2.cs 111ms 1.4ms 27.3MB 100ms 0ms mono 6.12.0
csharp 2.cs 159ms 4.8ms 100.0MB 107ms 23ms dotnet 7.0.102
csharp 1.cs 4299ms 4.1ms 55.2MB 4263ms 23ms dotnet/aot 7.0.102
csharp 1.cs 4553ms 42ms 141.1MB 4467ms 43ms dotnet 7.0.102
csharp 1.cs 4613ms 9.1ms 31.3MB 4597ms 0ms mono 6.12.0

mandelbrot

Input: 5000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 2.cs 739ms 25ms 153.2MB 660ms 43ms dotnet 7.0.102
csharp 3.cs 3410ms 11ms 111.6MB 3357ms 23ms dotnet 7.0.102
csharp 1.cs 3427ms 7.0ms 109.1MB 3367ms 27ms dotnet 7.0.102
csharp 3.cs 3838ms 20ms 19.5MB 3827ms 0ms dotnet/aot 7.0.102
go 1.go 3957ms 3.0ms 6.8MB 3943ms 3ms go 1.19.5
csharp 1.cs 4985ms 4.3ms 19.7MB 4970ms 0ms dotnet/aot 7.0.102
csharp 1.cs timeout 0.0ms 25.2MB 4977ms 0ms mono 6.12.0
go 1.go timeout 0.0ms 5.6MB 4983ms 0ms tinygo 0.25.0

Input: 1000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 3.cs 169ms 0.5ms 14.9MB 160ms 0ms dotnet/aot 7.0.102
go 1.go 169ms 0.6ms 2.8MB 157ms 0ms go 1.19.5
csharp 2.cs 171ms 21ms 111.6MB 117ms 23ms dotnet 7.0.102
csharp 1.cs 217ms 2.4ms 13.2MB 210ms 0ms dotnet/aot 7.0.102
csharp 1.cs 231ms 4.1ms 105.9MB 177ms 20ms dotnet 7.0.102
csharp 3.cs 247ms 0.6ms 108.4MB 187ms 30ms dotnet 7.0.102
go 1.go 328ms 0.3ms 0.0MB 320ms 0ms tinygo 0.25.0
csharp 1.cs 741ms 1.6ms 29.4MB 723ms 3ms mono 6.12.0

merkletrees

Input: 17

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 2.cs 922ms 6.2ms 378.5MB 783ms 183ms dotnet/aot 7.0.102
csharp 1.cs 967ms 1.1ms 313.5MB 853ms 137ms dotnet/aot 7.0.102
csharp 2.cs 1115ms 10ms 492.0MB 890ms 233ms dotnet 7.0.102
csharp 1.cs 1151ms 7.1ms 499.3MB 970ms 213ms dotnet 7.0.102
csharp 1.cs 1944ms 32ms 143.5MB 2473ms 120ms mono 6.12.0
go 1.go 2223ms 27ms 40.1MB 3083ms 63ms go 1.19.5
go 2.go 2469ms 6.5ms 41.8MB 3500ms 63ms go 1.19.5
go 1.go 4230ms 3.2ms 212.7MB 4150ms 60ms tinygo 0.25.0
go 2.go timeout 0.0ms 68.9MB 4973ms 7ms tinygo 0.25.0

Input: 15

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 2.cs 212ms 5.9ms 138.0MB 163ms 43ms dotnet/aot 7.0.102
csharp 1.cs 243ms 2.8ms 148.5MB 183ms 53ms dotnet/aot 7.0.102
csharp 1.cs 349ms 6.0ms 71.9MB 327ms 40ms mono 6.12.0
csharp 2.cs 366ms 4.4ms 206.1MB 270ms 80ms dotnet 7.0.102
csharp 1.cs 409ms 21ms 258.7MB 273ms 97ms dotnet 7.0.102
go 1.go 474ms 6.1ms 12.5MB 633ms 20ms go 1.19.5
go 2.go 528ms 6.9ms 13.6MB 730ms 13ms go 1.19.5
go 1.go 732ms 1.3ms 52.2MB 703ms 7ms tinygo 0.25.0
go 2.go 1428ms 1.8ms 38.9MB 1403ms 3ms tinygo 0.25.0

nbody

Input: 5000000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 9.cs 448ms 2.3ms 102.2MB 397ms 23ms dotnet 7.0.102
go 1.go 514ms 14ms 4.9MB 500ms 0ms go 1.19.5
csharp 8.cs 580ms 4.8ms 12.2MB 577ms 0ms dotnet/aot 7.0.102
csharp 8.cs 635ms 6.9ms 100.1MB 573ms 27ms dotnet 7.0.102
go 1.go 705ms 0.8ms 0.0MB 697ms 0ms tinygo 0.25.0
csharp 8.cs 1299ms 31ms 24.8MB 1287ms 0ms mono 6.12.0

Input: 500000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1.go 59ms 3.3ms 2.9MB 47ms 0ms go 1.19.5
csharp 8.cs 67ms 2.9ms 12.1MB 63ms 0ms dotnet/aot 7.0.102
go 1.go 73ms 0.5ms 0.0MB 63ms 0ms tinygo 0.25.0
csharp 9.cs 124ms 3.7ms 101.9MB 80ms 20ms dotnet 7.0.102
csharp 8.cs 139ms 1.0ms 102.0MB 93ms 20ms dotnet 7.0.102
csharp 8.cs 159ms 5.7ms 24.9MB 140ms 3ms mono 6.12.0

nsieve

Input: 12

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 2.cs 659ms 5.1ms 21.7MB 647ms 0ms dotnet/aot 7.0.102
go 2.go 699ms 4.4ms 17.4MB 687ms 0ms tinygo 0.25.0
csharp 2.cs 782ms 5.7ms 107.2MB 727ms 30ms dotnet 7.0.102
csharp 1.cs 941ms 20ms 71.8MB 917ms 20ms dotnet/aot 7.0.102
go 2.go 960ms 7.8ms 20.0MB 937ms 13ms go 1.19.5
go 1.go 1168ms 97ms 43.1MB 1153ms 3ms tinygo 0.25.0
csharp 1.cs 1256ms 13ms 86.6MB 1213ms 30ms mono 6.12.0
go 1.go 1383ms 3.9ms 73.9MB 1350ms 20ms go 1.19.5
csharp 1.cs 1489ms 60ms 159.0MB 1407ms 57ms dotnet 7.0.102
csharp 2.cs 2819ms 24ms 34.0MB 2800ms 0ms mono 6.12.0

Input: 10

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 1.go 146ms 0.6ms 13.1MB 137ms 0ms tinygo 0.25.0
go 1.go 148ms 4.3ms 23.5MB 130ms 7ms go 1.19.5
csharp 1.cs 148ms 5.7ms 29.8MB 137ms 7ms dotnet/aot 7.0.102
csharp 2.cs 154ms 1.2ms 15.4MB 150ms 0ms dotnet/aot 7.0.102
go 2.go 160ms 0.5ms 5.4MB 150ms 0ms tinygo 0.25.0
csharp 1.cs 198ms 1.1ms 42.8MB 177ms 3ms mono 6.12.0
go 2.go 216ms 1.8ms 7.6MB 203ms 3ms go 1.19.5
csharp 2.cs 244ms 0.6ms 100.7MB 187ms 23ms dotnet 7.0.102
csharp 1.cs 356ms 7.8ms 117.0MB 297ms 30ms dotnet 7.0.102
csharp 2.cs 672ms 0.6ms 25.9MB 657ms 3ms mono 6.12.0

pidigits

Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 8.go 1421ms 7.6ms 8.5MB 1393ms 7ms go 1.19.5
csharp 1.cs 4777ms 8.2ms 57.3MB 4743ms 40ms dotnet/aot 7.0.102
csharp 1.cs 4893ms 9.0ms 155.4MB 4837ms 113ms dotnet 7.0.102

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 8.go 348ms 4.5ms 8.5MB 327ms 3ms go 1.19.5
csharp 1.cs 1134ms 1.8ms 58.7MB 1107ms 23ms dotnet/aot 7.0.102
csharp 1.cs 1225ms 2.5ms 155.8MB 1200ms 57ms dotnet 7.0.102

regex-redux

Input: 2500000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 5.cs 3174ms 7.1ms 598.3MB 3123ms 237ms dotnet 7.0.102
csharp 6.cs 3664ms 57ms 592.5MB 3513ms 227ms dotnet 7.0.102
csharp 6.cs 3692ms 7.2ms 457.6MB 3580ms 167ms dotnet/aot 7.0.102
csharp 5.cs timeout 0.0ms 184.1MB 4953ms 93ms dotnet/aot 7.0.102
go 3.go timeout 0.0ms 111.3MB 4967ms 110ms go 1.19.5
go 3.go timeout 0.0ms 120.7MB 4940ms 40ms tinygo 0.25.0

Input: 250000_in

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 6.cs 387ms 3.2ms 69.5MB 353ms 33ms dotnet/aot 7.0.102
csharp 5.cs 481ms 3.9ms 168.2MB 393ms 67ms dotnet 7.0.102
csharp 6.cs 571ms 1.5ms 163.5MB 457ms 67ms dotnet 7.0.102
csharp 5.cs 699ms 2.1ms 70.3MB 663ms 30ms dotnet/aot 7.0.102
go 3.go 2426ms 7.5ms 20.9MB 2413ms 30ms go 1.19.5
go 3.go timeout 0.0ms 30.0MB 4980ms 3ms tinygo 0.25.0

secp256k1

Input: 2000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 0-ffi.go 151ms 1.1ms 9.2MB 137ms 3ms go 1.19.5
csharp 1.cs 4232ms 13ms 58.0MB 4203ms 23ms dotnet/aot 7.0.102
csharp 1.cs 4378ms 49ms 152.1MB 4320ms 63ms dotnet 7.0.102

Input: 500

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 0-ffi.go 51ms 1.8ms 9.7MB 37ms 0ms go 1.19.5
csharp 1.cs 1086ms 4.7ms 57.8MB 1060ms 17ms dotnet/aot 7.0.102
csharp 1.cs 1267ms 45ms 147.0MB 1203ms 57ms dotnet 7.0.102

spectral-norm

Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 3-m.cs 2157ms 59ms 13.7MB 4067ms 7ms dotnet/aot 7.0.102
go 4-m.go 2235ms 18ms 5.4MB 4320ms 3ms go 1.19.5
csharp 3-m.cs 4304ms 209ms 102.9MB 7280ms 33ms dotnet 7.0.102
go 1.go 4404ms 4.0ms 5.5MB 4393ms 3ms go 1.19.5
csharp 3.cs timeout 0.0ms 27.0MB 9767ms 7ms mono 6.12.0
go 1.go timeout 0.0ms 0.4MB 4987ms 0ms tinygo 0.25.0

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
csharp 3-m.cs 541ms 2.0ms 12.0MB 1027ms 3ms dotnet/aot 7.0.102
go 4-m.go 577ms 7.0ms 2.9MB 1083ms 0ms go 1.19.5
go 1.go 1114ms 1.2ms 2.9MB 1103ms 0ms go 1.19.5
csharp 3-m.cs 1131ms 2.6ms 102.5MB 2010ms 40ms dotnet 7.0.102
csharp 3-m.cs 2696ms 136ms 27.7MB 5060ms 17ms mono 6.12.0
go 1.go timeout 0.0ms 0.0MB 4983ms 0ms tinygo 0.25.0

Input: 2000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
go 4-m.go 152ms 2.2ms 2.9MB 270ms 0ms go 1.19.5
csharp 3-m.cs 152ms 2.5ms 12.3MB 267ms 3ms dotnet/aot 7.0.102
go 1.go 284ms 2.4ms 2.9MB 270ms 0ms go 1.19.5
csharp 3-m.cs 376ms 2.3ms 104.4MB 563ms 30ms dotnet 7.0.102
csharp 3-m.cs 686ms 9.6ms 27.8MB 1283ms 0ms mono 6.12.0
go 1.go 1642ms 4.7ms 0.0MB 1630ms 0ms tinygo 0.25.0