Ubuntu : Intel® Q6600® quad-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 |
| n-body | 1/6 | 142× | ± | 500,000 |
| spectral-norm | 1/5 | 1/2 | 1/3 | |
| binary-trees | 1/5 | 3× | ± | 16 |
| fasta | 1/2 | 50× | ± | |
| regex-dna | 1/2 | 4× | ± | |
| fannkuch | 2× | 1/3 | ± | |
| k-nucleotide | 6× | 1/4 | 1/2 | |
| reverse-complement | 11× | 7× | 2× | |
| pidigits | 614× | 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 |
|---|---|---|---|---|---|
| n-body N = 500,000 reduced workload | |||||
| JavaScript TraceMonkey | 2.99 | 2.99 | 301,784 | 1287 | 100% 0% 0% 0% |
| Perl | 19.08 | 19.08 | 2,132 | 1140 | 0% 0% 100% 0% |
| spectral-norm | |||||
| JavaScript TraceMonkey | 58.58 | 58.59 | 4,072 | 311 | 0% 0% 100% 0% |
| Perl | 1,212.30 | 304.61 | 7,792 | 846 | 100% 100% 99% 100% |
| binary-trees N = 16 reduced workload | |||||
| JavaScript TraceMonkey | 11.64 | 11.64 | 142,040 | 467 | 0% 0% 100% 0% |
| Perl | 53.11 | 53.11 | 41,788 | 541 | 0% 100% 0% 0% |
| fasta | |||||
| JavaScript TraceMonkey | 197.41 | 197.60 | 106,252 | 923 | 1% 0% 23% 76% |
| Perl | 339.78 | 339.76 | 2,112 | 934 | 100% 0% 0% 0% |
| regex-dna | |||||
| JavaScript TraceMonkey | 8.54 | 8.54 | 570,712 | 365 | 0% 100% 0% 0% |
| Perl | 39.07 | 14.23 | 153,584 | 527 | 55% 66% 58% 96% |
| fannkuch | |||||
| JavaScript TraceMonkey | 1,674.18 | 1,674.08 | 2,400 | 488 | 0% 0% 0% 100% |
| Perl | 4,206.05 | 1,062.52 | 6,020 | 471 | 99% 99% 99% 100% |
| k-nucleotide | |||||
| JavaScript TraceMonkey | 547.79 | 548.79 | 659,444 | 423 | 2% 97% 0% 0% |
| Perl | 281.57 | 88.72 | 2,774,904 | 648 | 78% 73% 88% 83% |
| reverse-complement | |||||
| JavaScript TraceMonkey | 61.49 | 61.49 | 894,528 | 456 | 0% 0% 100% 0% |
| Perl | 5.78 | 5.79 | 124,036 | 237 | 0% 0% 0% 100% |
| pidigits | |||||
| JavaScript TraceMonkey | 4,316.67 | 4,316.52 | 61,700 | 609 | 3% 17% 0% 81% |
| Perl | 7.03 | 7.03 | 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