How deceiving SunSpider could be for Siebel OpenUI browser comparisons…

How deceiving the results of the SunSpider benchmarking tool are!

Well, at least if you would use SunSpider as relevant factor to decide which browser is best to run Siebel OpenUI…

SunSpider gives more than great results for IE11 compared to Chrome and Firefox. Is Microsoft still cheating [note: I have no personal opinion here :-)]

On my local i5

Chrome 36.0.1985.125

============================================
RESULTS (means and 95% confidence intervals)
--------------------------------------------
Total: 197.0ms +/- 1.1%
--------------------------------------------

Chrome 38.0.2109.0 canary (64-bit)

============================================
RESULTS (means and 95% confidence intervals)
--------------------------------------------
Total: 218.3ms +/- 2.4%
--------------------------------------------

Firefox 31

============================================
RESULTS (means and 95% confidence intervals)
--------------------------------------------
Total: 208.7ms +/- 3.9%
--------------------------------------------

And now, let’s see how IE11 (11.0.9600.17207CO) does….

============================================
RESULTS (means and 95% confidence intervals)
--------------------------------------------
Total: 118.2ms +/- 5.2%
--------------------------------------------

Awesome! IE11 seems to perform about twice as fast either either Firefox or Chrome.
No question, we should go for IE11. Or wait… should we?

Let’s see how Siebel OpenUI IP13 Patchset 9 (also known as 8.1.1.11.9 – July patch set) performs on these browers.

But then… how are we going to effectively measure the rendering time other than using stopwatches?

With the great help of Duncan Ford a small performance testing framework for OpenUI has been developed. Just a small add-on (more about that in a separate post). What it will basically do is measure the time spent between “Preload” and “Postload” events. That is, it will exclude any CSS processing. Just raw JScript processing time. And we all know, Siebel OUI executes quite a bit of JScript (and with that respect JQuery functions).

screenshot

Even without true measurements anybody would spot that IE11 is slower than both Chrome and Firefox. The latter two seem to be pretty much on-par.

But to take a more scientific approach we took a customized view from a customer real-life implementation. And used the same navigation pattern in the different browsers for five subsequent iterations. Just to cancel out any “warming-up” issues. And we accessed two different views. One known as “breakdown” the other known as “complaint”. What should be taken into consideration is that the views in this example are pretty large. They contain both large form applets as well as several list applets.

Where Siebel High Interactivity clients won’t really complain in terms of rendering performance when one would add a lot of controls, Open UI sees more or less a linear degradation based on number of exposed controls. Obviously because the compiled nature of the Siebel HI ActiveX control.

So, show me the money! You can see that IE11 is about 2½ times slower than Chrome and twice as slow as Firefox.

Firefox and Chrome are pretty much on-par.

IEChromeFF

The “PS9” column shows performance of standard 8.1.1.11.9.

The “PS9 + Improvements” shows performance of JScript code changes which have been developed recently by Oracle Siebel development, and will likely be released with PS11 (October).

Especially where list applets are concerned (the “Complaint” view in this test contains 4 list applets, the “Breakdown” only 2) the further code improvements made a real difference of up to 33%.

Brief summary: don’t base your decision for browsers on Sunspider, and yes, there are more than significant performance differences between IE11 and Chrome/Firefox.

Advertisements

5 thoughts on “How deceiving SunSpider could be for Siebel OpenUI browser comparisons…

    • Need to check with my colleague if we can make the framework available. It essentially is a bit JScript which attaches to preLoad and postLoad events. It calculates time diff and stores data in an array. A bit of magic to render it nicely 😉 Will get back.

  1. Thanks. Unfortunatley, i’m not very well versed in JS, which i guess is not unusual in Siebel veteran 🙂 Would really appeciate sharing that code, as i’m fighting uphill battle with “IE only” corporate policies. Some hard data on performance in our environment would really help.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s