The Computer Language
23.03 Benchmarks Game

OCaml versus F# .NET fastest performance

Always look at the source code.

If the fastest programs are hand-written vector instructions, does the host language matter? You might be more interested in the less optimised programs — more seconds, less gz source code.

fannkuch-redux
source secs mem gz cpu secs
F# .NET #6 8.33 106,496 1097 32.25
OCaml #3 8.76 11,132 1017 34.99
OCaml #4 8.77 11,128 1011 35.06
F# .NET #5 9.75 111,368 912 38.19
OCaml #2 45.96 11,132 472 45.96
OCaml 51.66 11,132 523 51.65
n-body
source secs mem gz cpu secs
F# .NET #6 5.02 108,192 1383 5.00
OCaml 6.81 11,148 1251 6.81
F# .NET #3 6.91 106,624 1617 6.90
F# .NET #2 7.28 108,408 1381 7.26
F# .NET #4 7.40 108,620 1290 7.38
F# .NET #5 7.47 108,388 1351 7.45
F# .NET   Bad Output  
spectral-norm
source secs mem gz cpu secs
OCaml #2 5.32 11,148 377 5.32
F# .NET #4 1.60 110,572 732 5.86
F# .NET #2 1.63 109,184 853 5.90
mandelbrot
source secs mem gz cpu secs
F# .NET #6 3.83 140,068 933 14.86
F# .NET 4.08 140,580 877 15.88
F# .NET #5 4.09 139,916 897 15.90
OCaml #6 28.78 11,148 444 28.78
OCaml 7.56 11,148 717 30.12
pidigits
source secs mem gz cpu secs
F# .NET #6 0.99 105,584 905 0.98
F# .NET #4 1.39 106,688 874 1.39
OCaml #5 2.12 19,320 458 2.12
OCaml #7   Make Error  
regex-redux
source secs mem gz cpu secs
OCaml #3 2.47 548,820 647 4.20
F# .NET #6 2.45 1,131,324 611 5.76
F# .NET #7 4.66 1,325,080 599 6.52
OCaml #2 14.02 823,880 637 14.02
fasta
source secs mem gz cpu secs
OCaml #6 3.34 201,908 1189 3.34
F# .NET #3 1.16 137,720 1350 4.13
F# .NET #4 1.29 201,344 1342 4.54
OCaml #3 4.67 11,136 1071 4.67
k-nucleotide
source secs mem gz cpu secs
F# .NET #6 4.11 260,772 1907 12.92
F# .NET #2 4.54 272,540 1926 15.96
OCaml 45.59 338,320 886 45.59
OCaml #3 17.82 258,440 1833 45.96
OCaml #2 24.86 321,940 1239 57.36
reverse-complement
source secs mem gz cpu secs
OCaml 2.34 11,148 1368 5.58
OCaml #3 2.33 11,112 1356 6.06
OCaml #2 9.30 811,664 416 9.30
F# .NET #4   Timed Out  
F# .NET #5   Timed Out  
binary-trees
source secs mem gz cpu secs
OCaml #5 7.96 216,716 461 7.96
OCaml #2 3.62 215,460 751 10.27
F# .NET #7 5.39 1,718,280 516 16.69
OCaml

OCaml native-code
version 5.0.0

F# .NET

.NET SDK 7.0.102
Host Version: 7.0.2
Commit: d037e070eb
<ServerGarbageCollection>true