Ubuntu : Intel® Q6600® one core |
This chart shows 3 comparisons - Time-used, Memory-used and Code-used.
Each chart bar shows, for one unidentified benchmark, how much the fastest JavaScript TraceMonkey program used compared to the fastest Perl program.
This table shows 3 comparisons - Time-used, Memory-used and Code-used.
Each table row shows, for one named benchmark, how much the fastest JavaScript TraceMonkey program used compared to the fastest Perl program.
| JavaScript TraceMonkey used what fraction? used how many times more? | ||||
|---|---|---|---|---|
| Benchmark | Time | Memory | Code | Reduced N |
| spectral-norm | 1/20 | 1/2 | 1/3 | |
| n-body | 1/6 | 142× | ± | 500,000 |
| binary-trees | 1/5 | 3× | ± | 16 |
| regex-dna | 1/5 | 4× | ± | |
| fannkuch | 1/2 | ± | ± | |
| fasta | 1/2 | 50× | ± | |
| k-nucleotide | 2× | ± | ± | |
| reverse-complement | 11× | 7× | 2× | |
| pidigits | 610× | 19× | 2× | |
± read the measurements and then read the program source code.
This table shows 5 measurements - CPU Time, Elapsed Time, Memory, Code and ~ CPU Load.
For each named benchmark, measurements of the fastest JavaScript TraceMonkey program are shown for comparison against measurements of the fastest Perl program.
| Program Source Code | CPU secs | Elapsed secs | Memory KB | Code B | ~ CPU Load |
|---|---|---|---|---|---|
| spectral-norm | |||||
| JavaScript TraceMonkey | 58.56 | 58.56 | 4,068 | 311 | 0% 0% 0% 100% |
| Perl | 1,184.33 | 1,184.26 | 7,792 | 846 | 0% 0% 0% 100% |
| n-body N = 500,000 reduced workload | |||||
| JavaScript TraceMonkey | 3.00 | 3.00 | 302,488 | 1287 | 8% 7% 11% 100% |
| Perl | 19.35 | 19.35 | 2,128 | 1140 | 0% 0% 0% 100% |
| binary-trees N = 16 reduced workload | |||||
| JavaScript TraceMonkey | 11.57 | 11.58 | 142,040 | 467 | 0% 1% 0% 100% |
| Perl | 52.84 | 52.84 | 41,792 | 541 | 0% 0% 0% 100% |
| regex-dna | |||||
| JavaScript TraceMonkey | 8.52 | 8.52 | 578,120 | 365 | 0% 0% 0% 100% |
| Perl | 38.84 | 38.84 | 153,472 | 527 | 0% 0% 0% 100% |
| fannkuch | |||||
| JavaScript TraceMonkey | 1,674.50 | 1,674.41 | 2,396 | 488 | 0% 0% 0% 100% |
| Perl | 3,160.50 | 3,160.31 | 1,692 | 391 | 0% 0% 0% 100% |
| fasta | |||||
| JavaScript TraceMonkey | 201.05 | 201.12 | 105,256 | 923 | 1% 1% 0% 100% |
| Perl | 349.59 | 349.57 | 2,112 | 934 | 0% 1% 0% 100% |
| k-nucleotide | |||||
| JavaScript TraceMonkey | 551.12 | 551.09 | 659,444 | 423 | 0% 0% 0% 100% |
| Perl | 249.61 | 252.46 | 709,264 | 359 | 0% 0% 0% 100% |
| reverse-complement | |||||
| JavaScript TraceMonkey | 61.56 | 61.56 | 893,416 | 456 | 0% 0% 0% 100% |
| Perl | 5.80 | 5.80 | 124,036 | 237 | 0% 0% 1% 100% |
| pidigits | |||||
| JavaScript TraceMonkey | 4,298.89 | 4,298.63 | 61,840 | 609 | 0% 0% 0% 100% |
| Perl | 7.04 | 7.05 | 3,284 | 385 | 0% 0% 0% 100% |
| mandelbrot | |||||
| JavaScript TraceMonkey | |||||
| chameneos-redux | |||||
"Trace-based Just-in-Time Type Specialization for Dynamic Languages" pdf
mozilla-central-4b8962aad902
Home Page: Introduction to the JavaScript shell
Download: Building SpiderMonkey tip