Ever since Maksim Orlovich released benchmarks of its excellent FrostByte flavour of the KJS engine, I've been curious to perform a synthetic benchmark of KHTML/KJS, to see what our whole stack is up to.
Well, what better time for conducting tests than now, at the eve of the KDE 4.1.2 release, where new generation browsers are stable and some new contenders want to enter the field...
I will therefore present results for the following engines/browsers :
As for the tests themselves, I did not want to bias this benchmark by crafting them specially, so I decided to use the readily available synthetic performance test suite, consisting of a patchwork of external tests, that was independantly set together for testing the performance of Opera 9.5.
Before I proceed to the details, I am very happy to report up front that KHTML/KJS is the engine that showed the most consistent performance, and is definetly the fastest overall on the Linux IA-32 platform :-)
There are six tests available, that I will examine successively. Each test was run three times on an otherwise idle AMD X2 4600+ with 2 Gigabytes of ram; the arithmetic mean of those was kept as final result.
KHTML scores a gold, Chrome a silver and Opera a bronze.
(as a side note, this really is a nice reward for all the work put in the careful optimisation of DHTML in our rendering engine - such as in direct layer translation, and deep optimisation of the positioned objects code path)
Gold is for Chrome, silver for Gecko and bronze for KHTML.
Chrome has the gold, KHTML the silver, and bronze goes to Gecko
Opera wins the gold, KHTML takes silver and Chrome is happy to go with bronze.
The fith test is for pure DOM manipulations :
KHTML takes the gold, Chrome is silver and Opera bronze.
The sixth is a batch of four tests aiming at testing the rendering speed of standard html elements, and of the very young Canvas element. It stresses both the DOM and either the HTML rendering stack or the Canvas painting stack (so it would probably make more sense to separate this latter test from the others but hey..)
Gecko scores a gold, Opera a silver and KHTML a bronze
Our bronze here shows off the work of Harri Porten, who contributed significant DOM speed ups and other optimisations.