Serverside Javascript Tracemonkey Performance – Part III

Path: mv.asterisco.pt!mvalente
From: mvale…@ruido-visual.pt (Mario Valente)
Newsgroups: mv
Subject: Serverside Javascript Tracemonkey Performance – Part III
Date: Sun, 24 Aug 08 19:01:21 GMT

As expected the Sunspider ubench Javascript performance tests
on serverside JS 1.6 and JS 1.8 (tracemonkey) run much faster
when on a halfway decent machine. Below you can find the tests
when running on a Xen VM (underlying hardware is some kind of
quad-core machine).

In this case JS1.6 now takes 9.940ms to complete all tests
(a small decrease from the 11s on the UML VM and about double
the 4.1982ms of the browserside testes) while JS1.8tracemonkey
now takes 0.300ms (halving the previous serverside tests at the
UML VM and coming close to the 185ms on the browserside tests.
Huge difference, now around a +-30X increase!

If someone wants to and can run these tests in a bare metal
Linux machine and needs the files, let me know. The browserside
tests made by Brendan Eich dont mention the hardware used to run
the tests but I would like to see some serverside tests in a
decent machine which I’m sure would beat the browserside times.

[root@localhost ubench]# cat ubench.out
—————————————
function-closure.js
JS 1.6

real 0m0.399s
user 0m0.340s
sys 0m0.030s

JS 1.8

real 0m0.011s
user 0m0.000s
sys 0m0.010s
—————————————
function-empty.js
JS 1.6

real 0m1.869s
user 0m1.760s
sys 0m0.000s

JS 1.8

real 0m0.065s
user 0m0.040s
sys 0m0.000s
—————————————
function-missing-args.js
JS 1.6

real 0m1.609s
user 0m1.600s
sys 0m0.000s

JS 1.8

real 0m0.047s
user 0m0.040s
sys 0m0.000s
—————————————
function-sum.js
JS 1.6

real 0m1.769s
user 0m1.620s
sys 0m0.000s

JS 1.8

real 0m0.048s
user 0m0.040s
sys 0m0.000s
—————————————
loop-empty-resolve.js
JS 1.6

real 0m0.392s
user 0m0.350s
sys 0m0.000s

JS 1.8

real 0m0.027s
user 0m0.020s
sys 0m0.000s
—————————————
loop-empty.js
JS 1.6

real 0m1.865s
user 0m1.820s
sys 0m0.000s

JS 1.8

real 0m0.050s
user 0m0.040s
sys 0m0.000s
—————————————
loop-sum.js
JS 1.6

real 0m2.027s
user 0m1.950s
sys 0m0.010s

JS 1.8

real 0m0.052s
user 0m0.050s
sys 0m0.000s

— MV