[webkit-qt] QtWebKit 2.3.1 on MIPS

Massimo Callegari massimocallegari at yahoo.it
Wed Apr 24 07:25:01 PDT 2013

Thank you Allan, always quick and precise :)

I double checked the path of my build on MIPS and it actually includes assembler/MacroAssemblerMIPS.h. I probably wished it didn't :'(

So, here's the results I had so far with this V8 JS test: http://v8.googlecode.com/svn/data/benchmarks/v7/run.html

>>>> On my PC (Intel i5 Ubuntu 12.04 32bit)

With Chrome 26.0.1410.63:

Score: 14614
Richards: 14679
DeltaBlue: 19386
Crypto: 19423
RayTrace: 21143
EarleyBoyer: 34667
RegExp: 4428
Splay: 5509
NavierStokes: 21052

With QtWebKit 2.3.1:

Score: 12123
Richards: 14488
DeltaBlue: 14242
Crypto: 15137
RayTrace: 15984
EarleyBoyer: 18329
RegExp: 4039
Splay: 7779
NavierStokes: 16227

Not bad at all. So it means JSC works quite good. At least on an x86 platform.

>>>> on my MIPS box (BCM 7231):

With QtWebKit 2.3.1 on DirectFB 1.4.15:

Score: 80

Richards: 67.3

DeltaBlue: 49.1

Crypto: 90.0

RayTrace: 101

EarleyBoyer: 110

RegExp: 52.2

Splay: 129

NavierStokes: 70.4


On the same box, I had the chance to run a version of Chromium using V8, over OpenGL:

Score: 346

Richards: 446
DeltaBlue: 445

Crypto: 495

RayTrace: 460

EarleyBoyer: 603

RegExp: 99.1

Splay: 263

NavierStokes: 287

With other HTML5/SVG/Canvas tests, QtWebKit 2.3.1 is faster than Chromium and, as I said, it's a very good thing.

I would really love to go with QtWebKit and I will surely look into LLint, hoping it will raise a bit the core performances.
For now I just wanted to share my discoveries.

Thanks again and regards,

 Da: Allan Sandfeld Jensen <kde at carewolf.com>
A: Massimo Callegari <massimocallegari at yahoo.it> 
Cc: webkit-qt at lists.webkit.org 
Inviato: Mercoledì 24 Aprile 2013 15:47
Oggetto: Re: [webkit-qt] QtWebKit 2.3.1 on MIPS

On Wednesday 24 April 2013, Massimo Callegari wrote:
> - V8 engine: it seems it has been abandoned for WebKit1 and it is the
> default on Qt5/WebKit2. Is this correct or is there still a way to use V8
> on QtWebKit 2.3.1 (like the old option --v8) ?
I have not experimented with V8 and QtWebKit, and I don't know how much work 
it will be to reintegrate that, but I think it has not been maintained for 
some time.

> - JSC MIPS: reading around, I've seen it should be possible to use MIPS
> assembler code into JavaScriptCore. Anyone knows how I can do it? Right
> now I'm passing -mips32 flag but it seems to be not enough. Shoud I add
> -march=mips or something similar to enable CPU(MIPS) into JSC ?
JavaScriptCore in QtWebKit 2.3.1 and Qt 5 should be using MIPS JIT already, 
but only the first generation JIT. The second generation DFG JIT for MIPS is 
in WebKit trunk, and so is LLInt for MIPS. LLInt is the low level interpreter 
that is used when JIT doesn't look profitable. Neither has been cherry-picked 
for Qt 5.1 nor QtWebKit 2.3 yet, but I am expected it to be in Qt 5.2.

It shouldn't be too hard to cherry-pick MIPS LLInt which should be somewhat 
faster than without, but the DFG JIT code is much more invasive and would take 
more effort. If you want to give a try at MIPS LLInt you can start at 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-qt/attachments/20130424/726778a1/attachment-0001.html>

More information about the webkit-qt mailing list