How big is the measured performance difference?

Each chart bar shows how many times more Time or how many times more Memory one unidentified ↓ regex-dna program used, compared to the program that used least Time or the program that used least Memory.

 regex-dna benchmark ~50MB N=5,000,000

This table shows 5 measurements - CPU Time, Elapsed Time, Memory, Code and ~ CPU Load.

Compare how much Memory the regex-dna programs used - sort Memory KB. Compare how much Code the programs used - sort Code B

Column × shows how many times more each program used compared to the program that used least.

    sort sort sort sort
  ×   Program Source Code CPU secs Elapsed secs Memory KB Code B ~ CPU Load
1.0JavaScript V8 #2 5.635.63211,488373  0% 0% 0% 100%
1.5JavaScript TraceMonkey 8.528.52578,120365  0% 0% 0% 100%
1.7JavaScript TraceMonkey #2 9.559.55587,492373  0% 0% 0% 100%
2.5C++ GNU g++ #4 14.1914.19100,3321759  0% 0% 0% 100%
3.3C++ GNU g++ 18.7918.7993,6041588  0% 0% 0% 100%
4.5GNU gcc #4 25.5525.5581,5681525  0% 0% 0% 100%
5.1C++ GNU g++ #3 28.7528.75115,7681599  0% 0% 0% 100%
5.2Python CPython 29.2229.22191,168342  0% 0% 0% 100%
5.2Java 6 -server #5 29.3529.37689,108929  0% 0% 0% 100%
5.3Java 6 -server #4 29.6429.68714,484921  0% 0% 0% 100%
5.7GNU gcc #2 32.1532.15124,6961099  0% 0% 0% 100%
5.8Python 3 32.3732.37372,276349  0% 0% 0% 100%
5.8ATS 32.7832.78176,0002551  0% 0% 0% 100%
6.0Scala #3 33.6233.63548,496659  0% 8% 0% 100%
6.6Haskell GHC #4 37.2737.27170,9921672  0% 0% 0% 100%
6.9Scheme PLT 38.7438.74600,128835  0% 0% 0% 100%
6.9Perl #2 38.8438.84153,472527  0% 0% 0% 100%
7.1Java 6 -server #2 39.8739.91566,6241534  0% 0% 0% 100%
7.3Scheme PLT #2 41.1841.18612,264669  0% 0% 0% 100%
7.5Scala 41.9641.99821,028663  0% 0% 0% 100%
7.6Perl #4 42.9542.95561,500440  0% 0% 0% 100%
7.9Ada 2005 GNAT 44.2944.30149,6683334  4% 5% 2% 100%
8.2Scala #2 46.3646.42751,0441520  0% 0% 0% 100%
8.4PHP #2 47.2447.24213,924449  0% 0% 0% 100%
9.0Ruby 1.9 50.7750.77322,520323  0% 0% 0% 100%
10Ruby MRI 58.6458.64254,336323  2% 3% 0% 100%
15C# Mono #6 84.1184.11814,676638  0% 0% 0% 100%
15Ruby JRuby 86.8686.92538,728323  0% 0% 0% 100%
17C# Mono #5 93.0593.04813,2441647  0% 0% 0% 100%
20Erlang HiPE #6 111.49111.48135,4441058  0% 0% 0% 100%
22Erlang HiPE #5 126.40126.37733,656855  0% 17% 83% 0%
34Erlang HiPE 193.07192.881,060,2441022  0% 32% 1% 69%
56Smalltalk VisualWorks 5 min5 min296,396584  0% 0% 0% 100%
57Java 6 -Xint #4 5 min5 min679,700921  0% 0% 0% 100%
61Java 6 -Xint #5 5 min5 min664,044929  0% 0% 0% 100%
72Erlang HiPE #3 6 min6 min1,331,264687  3% 96% 0% 1%
89Go 6g 8g 8 min8 min2,278,892634  0% 0% 0% 100%
95Java 6 -Xint #2 8 min8 min563,1081534  0% 0% 0% 100%
Ada 2005 GNAT #3 Failed1233
Ada 2005 GNAT #4 Failed1352
C# Mono Failed624
C# Mono #2 Failed645
C# Mono #3 Failed607
Erlang HiPE #2 Failed808
JavaScript V8 Bad Output365
Lisaac Make Error1299
Lisp SBCL #3 Timed Out1h 00 min1948
Lisp SBCL Timed Out1h 00 min591
Mozart/Oz #2 Timed Out1h 00 min589
OCaml #2 Failed615
OCaml Failed1261
OCaml #3 Failed892
interesting alternative programs
1.0Perl #3 5.525.52299,620440
 Fortran Intel Failed  2425
1.2Perl #6 6.506.50202,760477
2.0Pascal Free Pascal #3 11.0311.03224,0682932
2.3Perl #5 13.0613.06203,760484
2.3Python CPython #2 13.1613.16190,016314
2.6Python 3 #2 14.4614.46385,580316
3.8Perl 21.2421.24203,220426
4.3Pascal Free Pascal 24.0224.02111,1561199
5.7F# Mono 31.9431.94806,992796
6.2Lua #3 34.7734.76340,044427
6.9Lua LuaJIT #3 38.8638.86297,112427
7.1Haskell GHC 39.6839.68251,036519
7.8Ruby 1.9 #2 43.7343.73413,444396
8.3Ruby MRI #2 46.7746.77352,720396
8.5PHP 47.7247.72219,7241044
12C# Mono #4 67.3567.35477,360657
13Ruby JRuby #2 72.8772.91530,532396
missing programs
Clean No program
F# Mono No program
Fortran Intel No program
Java 6 steady state No program
Lua No program
Lua LuaJIT No program
Pascal Free Pascal No program

 regex-dna benchmark : Match DNA 8-mers and substitute nucleotides for IUB codes

diff program output for this 100KB input file (generated with the fasta program N = 10000) with this output file to check your program is correct before contributing.

We use FASTA files generated by the fasta benchmark as input for this benchmark. Note: the file may include both lowercase and uppercase codes.

Each program should

Revised BSD license