473,545 Members | 293 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Webkit/V8 vs. Webkit/JavaScriptCore/SquirreFish, WOW

Run the benchmarks at
http://www2.webkit.org/perf/sunspide...sunspider.html
and
http://code.google.com/apis/v8/run.html

And see : V8 is between 8.5...13.8 times faster !

--
Jorge.
Sep 6 '08 #1
10 6054
Jorge meinte:
Run the benchmarks at
http://www2.webkit.org/perf/sunspide...sunspider.html
and
http://code.google.com/apis/v8/run.html

And see : V8 is between 8.5...13.8 times faster !
Nope. V8 is 5 times slower than SpiderMonkey or Safari's JS Engine. At
least in my (undeniably pedestrian) benchmark. However, it tells me,
that most^Wall of those artificial benchmarks (particularly those
provided by browser developers) are crap.

And they always and only measure pure JS speed, never DOM "speed". Which
is precisely the same thing, as rating a computer system by pure CPU
muscles when using it as gaming platform.

Gregor
--
http://photo.gregorkofler.at ::: Landschafts- und Reisefotografie
http://web.gregorkofler.com ::: meine JS-Spielwiese
http://www.image2d.com ::: Bildagentur für den alpinen Raum
Sep 6 '08 #2
On Sep 6, 8:23*pm, Gregor Kofler <use...@gregork ofler.atwrote:
>
And they always and only measure pure JS speed, never DOM "speed".
That's the main reason why they're called JS bechmarks, not DOM
benchmarks.
DOM speed has more to do with the layout/rendering engine than with
JS, I believe.

--
Jorge.
Sep 6 '08 #3
Sat, 6 Sep 2008 13:00:12 -0700 (PDT), /Jorge/:
On Sep 6, 8:23 pm, Gregor Kofler <use...@gregork ofler.atwrote:
>And they always and only measure pure JS speed, never DOM "speed".

That's the main reason why they're called JS bechmarks, not DOM
benchmarks.
DOM speed has more to do with the layout/rendering engine than with
JS, I believe.
DOM speed in this case is about manipulation of the DOM from
scripts. So if Safari's script engine performs much better with DOM
manipulation than Chrome's, then given they both use the same
layout/rendering engine Safari appears much better to me as this
what scripting on the Web is used mostly for.

My tests running SunSpider [1] using latest Firefox 3.1 nightly
(with the TraceMonkey JIT enabled [2]) and Chrome showed Firefox
performs better in overall and with most basic operations, where
Chrome shows better in less practical areas, IMO.

[1] http://www2.webkit.org/perf/sunspide...sunspider.html
[2]
https://wiki.mozilla.org/javascript:...th_TraceMonkey

--
Stanimir
Sep 6 '08 #4
Jorge meinte:
On Sep 6, 8:23 pm, Gregor Kofler <use...@gregork ofler.atwrote:
>And they always and only measure pure JS speed, never DOM "speed".

That's the main reason why they're called JS bechmarks, not DOM
benchmarks.
Correct. Nontheless I deem them pretty useless. If you state that V8 is
10 times faster than other engines, it hardly says anything about how it
will affect the performance of ones web applications. After all, pure JS
without DOM interaction is rarely useful.

However, my supersimple benchmark[1] shows that sorting a simple row
takes, say, 30ms on Chrome, sorting a "complicate d" table (dates) takes
130ms. On Safari the figures are 40/60ms on FF 270ms/300ms. Since the
DOM manipulation is always the same, FF obviously has its problems with
rearranging the table rows (in fact it gets a lot faster, if cells are
simple and don't contain input elements). When sorting date columns,
they get converted into ISO format before being sorted. The "normal"
text column omits this "pure JS" step.
That leads to the conclusion, that Chrome needs approx. 100ms for this
step, Safari 20ms and Firefox 30ms. Whatever the reasons are (perhaps
Array.sort() in Chrome is crap?), it shows the "value" of benchmarking.

BTW: My "benchmark" can at least claim, to be rooted in a "real world"
application.

Gregor
[1]
http://web.gregorkofler.com/index.php?page=sortable

--
http://photo.gregorkofler.at ::: Landschafts- und Reisefotografie
http://web.gregorkofler.com ::: meine JS-Spielwiese
http://www.image2d.com ::: Bildagentur für den alpinen Raum
Sep 6 '08 #5
On Sep 6, 10:55*pm, Gregor Kofler <use...@gregork ofler.atwrote:
>
If you state that V8 is
10 times faster than other engines, it hardly says anything about how it
will affect the performance of ones web applications. After all, pure JS
without DOM interaction is rarely useful.
What you're saying is like if you put a gigabit enet card into an 8086
PC-XT server just to find out that it still performs as poorly as
before. Then you move to a four-cores core2/SATA RAID/16GB RAM linux
server and plug it in through a 10BaseT card because you've learned
that "gigabit enet is useless"...

There are several variables in the end-result equation, JS is one of
them. It's weight in the end result depends on the kind of page.

--
Jorge.
Sep 6 '08 #6
On Sep 6, 10:55*pm, Gregor Kofler <use...@gregork ofler.atwrote:
>
However, my supersimple benchmark[1] shows that sorting a simple row
takes, say, 30ms on Chrome, sorting a "complicate d" table (dates) takes
130ms. On Safari the figures are 40/60ms on FF 270ms/300ms. Since the
DOM manipulation is always the same, FF obviously has its problems with
rearranging the table rows (in fact it gets a lot faster, if cells are
simple and don't contain input elements). When sorting date columns,
they get converted into ISO format before being sorted. The "normal"
text column omits this "pure JS" step.
That leads to the conclusion, that Chrome needs approx. 100ms for this
step, Safari 20ms and Firefox 30ms. Whatever the reasons are (perhaps
Array.sort() in Chrome is crap?), it shows the "value" of benchmarking.

BTW: My "benchmark" can at least claim, to be rooted in a "real world"
application.
This page :

http://preview.tinyurl.com/685oh2

sorts a table and updates the screen in an endless loop and shows the
speed in loops (frames) per second.
The frame rates that I get:

FF 3.01: 21fps
Safari 3.1.2: 32fps
Opera 9.52: 51fps
Chrome: varies between 72fps ... 100fps (?)

--
Jorge.
Sep 7 '08 #7
Jorge meinte:
This page :

http://preview.tinyurl.com/685oh2

sorts a table and updates the screen in an endless loop and shows the
speed in loops (frames) per second.
The frame rates that I get:

FF 3.01: 21fps
Safari 3.1.2: 32fps
Opera 9.52: 51fps
Chrome: varies between 72fps ... 100fps (?)
Yes. And? That doesn't contradict my findings. Your sort function looks
like that:

var sort1= function (pA, pB) { return pB[0]-pA[0] }

With this sort function Chrome is the fastest browser in my test, too
(though Safari comes in second, and the margin is much smaller).

Chrome gets slowed down more than other browser, when the comparison
function becomes more complex.

Gregor
--
http://photo.gregorkofler.at ::: Landschafts- und Reisefotografie
http://web.gregorkofler.com ::: meine JS-Spielwiese
http://www.image2d.com ::: Bildagentur für den alpinen Raum
Sep 7 '08 #8
On Sep 7, 12:38*pm, Gregor Kofler <use...@gregork ofler.atwrote:
>
Yes. And?
And... nothing. I just wanted to put online a "tool" to benchmark
with.
That doesn't contradict my findings. Your sort function looks
like that:

var sort1= function (pA, pB) { return pB[0]-pA[0] }

With this sort function Chrome is the fastest browser in my test, too
(though Safari comes in second, and the margin is much smaller).

Chrome gets slowed down more than other browser, when the comparison
function becomes more complex.
That's weird, as here :

http://code.google.com/apis/v8/design.html

You can read :

"if the functions in your application tend to be run again and again,
the performance improvement will be greater than if many different
functions tend to run only once."

Unless that sorting f() uses regular expressions (?) :

"if your application does a lot of evaluating regular expressions, you
might not see much performance improvement"

What fps rates do you get ?

--
Jorge.
Sep 7 '08 #9
Jorge meinte:
Unless that sorting f() uses regular expressions (?) :
"if your application does a lot of evaluating regular expressions, you
might not see much performance improvement"
My "complex" sorting uses regexp.
What fps rates do you get ?
FF 21, Opera 64, Chrome 81 (relatively stable), Safari 40.

Gregor

--
http://photo.gregorkofler.at ::: Landschafts- und Reisefotografie
http://web.gregorkofler.com ::: meine JS-Spielwiese
http://www.image2d.com ::: Bildagentur für den alpinen Raum
Sep 7 '08 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
2215
by: timothytoe | last post by:
I saw mention of Drosera (the Webkit debugger) being dropped into nightly builds of Webkit. I'm always looking for a way to debug on different browsers, so I grabbed the nightly. What a disappointment. Not even a "getting started" or a "readme." I click on run-nightly-webkit.cmd. Safari is launched and from I can tell it's the Safari I...
37
9012
by: Michael Palmer | last post by:
As anyone knows, the state of Python GUI programming is a little fractured at this time, with many toolkits, wrappers and meta-wrappers dead and alive, with or without documentation. I've come across two projects that have the appeal of striving for simple, pythonic APIs: PyGUI and wax. The latter is a wrapper around wxPython. It is ...
1
1395
by: 000baaa000 | last post by:
http://nightly.webkit.org/
2
3788
by: Chris Riesbeck | last post by:
In Firefox, IE and Opera, with a select menu with size 1, typing a few characters in the menu selects an item and triggers the onchange event. In the Webkit-based Safari and Google Chrome, the item appears to be selected (visually and selectedIndex is set) but the onchange is not triggered. The W3C says "The onchange event occurs when a...
1
3631
by: Mital | last post by:
I want to create a webkit/c++ custom application to run javascript on top of it. can anyone help me out. I am finding difficulties as in i dont know how to include webkit.dll in my sample c++ application. I work on windows. can anyone give me a small example how to integrate webkit in my application. Thank you in advance.
0
1277
by: Mital | last post by:
Does anybody have created a webkit application using c++. I need to create one. I am not able to find how can I include webkit.dll in my application.
3
1671
by: RobG | last post by:
According to AppleInsider, Steve Ballmer is not averse to the idea: 'Addressing a developer conference in Sydney Australia, Microsoft CEO Steve Ballmer said the idea of using WebKit as the rendering engine within its web browser was "interesting" and added "we may look at that."' <URL:...
0
7453
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main...
0
7390
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language...
0
7742
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the...
0
5958
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then...
1
5318
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes...
0
3441
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in...
0
3436
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
1865
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
1
1007
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.