WebKit achieves Acid3 100/100 in public build
Posted by Maciej Stachowiak on Wednesday, March 26th, 2008 at 6:55 pmUPDATE We now believe we have a full rendering pass (but not necessarily an animation smoothness pass yet). See the bottom of the post for details.
UPDATE The Windows nightly is now available for download. See below for details.
With r31342 WebKit has become the first publicly available rendering engine to achieve 100/100 on Acid3. The final test, test 79, was a brutal torture test of SVG text rendering. Details of the bugs we fixed will follow. Indeed, we found a critical bug in the test itself that would have forced a violation of the SVG 1.1 standard to pass, so until a few hours ago it was not possible to get a valid 100/100. Acid3 test editor Ian Hickson has the details.
Note: this does not indicate a full pass of Acid3. We have a slight glitch in the text rendering that is likely to be fixed soon (patch in progress). Also, the animation is required to be smooth. On typical machines, if you look really closely, you can see a small glitch in the animation on test 26 because 26 is designed to be a performance test. However, we think we are faster than all other browsers on test 26. What constitutes a smooth animation is somewhat subjective.
This is not just a screenshot, you can pull live from SVN and build to see it yourself, and a fresh nightly build is coming soon.
Update:
Thanks to our own Dan Bernstein, as of r31356 we believe we have a pixel-perfect match for the reference rendering.
Get the fresh hot bits of the latest Mac and Windows nightly builds which include the full reference rendering pass.
Extra special bonus update: Alp Toker reports that the Gtk port now gets 100/100, although it does not yet match the reference rendering.
March 26th, 2008 at 6:59 pm
Congratulations Guys!!!!
March 26th, 2008 at 7:11 pm
Fantastic work. I want to congratulate and thank you all for the work that has been done here, and a special thanks to the test creator, Ian Hickson. The progress we’ve seen in all browsers since Acid3 was released has been simply amazing. I look forward to seeing a new version of Safari being released for public consumption in the future. Hope it isn’t too long.
March 26th, 2008 at 7:22 pm
That really is great work! I hear the heads over at the development of IE reached a milestone today too. They finally got the memo that there’s an Acid3 test.
But seriously. This is really great work.
March 26th, 2008 at 7:25 pm
The latest nightly looks great. Congratulations to all of you and thanks for your hard work. I too look forward to seeing an update that will bring this fantastic rendering engine to all Safari users.
March 26th, 2008 at 7:26 pm
Great job guys. Build r31344 gets 99/100. It’s that SVG text rendering test again. I’m not savy enough to bild it on my own.
March 26th, 2008 at 7:34 pm
Yes!!!!! Congrats to all of the dedicated folks who worked on this, submitted bug reports, et al !!! YAY!
March 26th, 2008 at 7:34 pm
Rock ON. Congratulations to the WebKit team, and Ian!
March 26th, 2008 at 7:35 pm
Good job. I think you already know this, but the text that says “Acid3″ is slightly skinnier in the test-rendered version than in the reference. My hobby is opening two similar pages in different tabs and rapidly switching between the two tabs.
March 26th, 2008 at 7:40 pm
Interesting, the first few times I did the test with build r31344 it came back as 99/100 but after several refreshes it scored 100/100. Amazing work guys.
March 26th, 2008 at 7:46 pm
r31344 is now out, and looks exactly, to the pixel, like the reference rendering. The spacing issue is resolved it appears.
In addition, a previous build corrected the refresh regression bug in the ACID 2 test.
Now where’s this Opera build…
March 26th, 2008 at 7:58 pm
Congratulations!
March 26th, 2008 at 8:09 pm
@m1ss1ontomars2k4
I believe http://trac.webkit.org/projects/webkit/changeset/31356 fixes that
March 26th, 2008 at 8:10 pm
WebKit gets 100 on Acid3…
The last few days have been neck-and-neck, but finally the latest nightly build of WebKit gets 100/100 on the Acid3 test, just beating out Opera. While Opera had a screenshot of an internal build getting 100 yesterday, WebKit’s is the first publ…
March 26th, 2008 at 8:11 pm
Just downloaded 31356, it’s now pixel exact on my machine. Awesome work guys!
March 26th, 2008 at 8:14 pm
So, if it wasn’t possible to get 100/100 until a few hours ago and Opera said they did it yesterday…
March 26th, 2008 at 8:15 pm
Congratulations!
March 26th, 2008 at 8:47 pm
The first time I ran 31356, it got 99/100 on the test. Subsequent runs achieved 100/100.
Unfortunately, I didn’t pay enough attention to the screen that first run, but one of the boxes was gray (I believe it was the blue one, but I wouldn’t bet anything serious on it.)
Awesome job.
March 26th, 2008 at 8:51 pm
I am getting 100/100 on my MacBook Pro; however, I can only get 94/100 on my iMac G5. Is there anything to do with the architecture (PowerPC vs Intel)? If not, what are the other possible factors that may lead to such results?
For your reference:
Failed 6 tests.
Test 26 passed, but took 313ms
Test 43 passed, but took 17ms
Test 46 passed, but took 18ms
Test 65 passed, but took 37ms
Test 69 failed: Undefined value
Test 74 failed: getSVGDocument failed for referencing an svg document.
Test 75 failed: Value undefined (result of expression svg.setCurrentTime) is not object.
Test 76 failed: expected ‘0′ but got ‘100′ - Incorrect animVal value after svg animation.
Test 77 failed: expected ‘3′ but got ‘0′ - getNumberOfChars returned incorrect string length.
Test 78 failed: expected ‘90′ but got ‘0′ - getRotationOfChar(0) failed.
Total elapsed time: 1.76s
March 26th, 2008 at 9:00 pm
Awesome news, and a kudos to the Opera folk as well. Too bad half the web is still in IE6 hell
March 26th, 2008 at 9:19 pm
Great job. Now just fix the few odd 99/100s etc that people get and we’ll all be happy bunnies until Acid4 comes along
Anyone got any thoughts on what Acid4 should test?
March 26th, 2008 at 9:38 pm
You guys did an awesome job providing us nightly users with a day-to-day update on the progress we could follow live with each new build of Safari. We knew it was coming soon considering the rate you have improved the engine in the last couple of days. Many thanks for this hardcore hacking job, hope you will be rewarded with the prize of getting the first stable release to pass Acid3!
March 26th, 2008 at 10:40 pm
You sure do
March 26th, 2008 at 11:03 pm
Safari. Previously on speed, now on Acid, too. (I give this hereby into the public domain for Apple marketing to use. That would be awesome)
March 26th, 2008 at 11:24 pm
Congratulations and great work! Hope you’ll get the Browser of the Year award and fund!
March 26th, 2008 at 11:57 pm
And don’t forget Epiphany and Konqueror, our open source Linux browsers! They have reached also 100/100 on acid by the webkit engine. Woohaa!
March 27th, 2008 at 12:04 am
Congratulations guys I’m particulary impressed with your openness during this process with rapid updates on progress, it’s been very exciting!
March 27th, 2008 at 12:19 am
Congratulations on this, from the Netherlands. This should give WebKit and Safari some positive press after the not-so-positive reactions to the Safari-via-update trick.
Indeed, like slugtrail says, the openness is impressive; it boosts awareness and appreciation for WebKit.
March 27th, 2008 at 12:20 am
Nothing like a competition to get multiple talented teams in overdrive mode.
Awesome work guys (and the Opera team as well of course.) Here’s hoping Foxy gets up to speed as well, completing the Browsers of Awesomeness Trifecta.
March 27th, 2008 at 12:41 am
I also only got 99 on the first try. Maybe this is due to caching of the old faulty javascript/html on the test page since I have been running the test every morning for the past week
Super job! And please continue to write about your progress with the engine – it is very interesting reading!
March 27th, 2008 at 1:18 am
Oh, and with rev. 31370, the “99 on first try, 100 all the subsequent times” bug seems to be gone, too. Awesomeness. Now bring on Safari 3.2, oh and KDE guys: Please just let this KHTML/WebKit duality go and use WebKit for Konqueror. Or at least give a simple option to the user to use either engine (Great choice by QT by the way). Hopefully Firefox catches up soon, I don’t really like the current state of Gecko and the decision of a fifth beta for FF3 doesn’t bode too well…
March 27th, 2008 at 2:30 am
hm, I still have “Test 26 passed, but took 112ms (less than 30fps)” (only this)
but it’s awesome (I hate this word ;]) that WebKit is first again!
but still there are problems with :hover on http://disruptive-innovations.com/zoo/css3tests/selectorTest.html#target (when I remove :hover 2 last tests work perfectly)
March 27th, 2008 at 2:58 am
Congratulations from Italy
Webkit is the best engine ever
March 27th, 2008 at 3:28 am
Congrats guys!
March 27th, 2008 at 4:44 am
Good work,
Congrats!
March 27th, 2008 at 4:46 am
Well done.
A most excellent job!
March 27th, 2008 at 5:10 am
Congratulations Safari team! Great work!
I was reading Rob Sayre’s commentary today: http://blog.mozilla.com/rob-sayre/2008/03/26/acid3-is-basically-worthless/ and while it mostly sounds like sour grapes I would love to hear comments from the Safari team about this commit:
http://trac.webkit.org/projects/webkit/changeset/31322
If it’s not the hack it looks like, why not take the time to comment publicly to resolve any ambiguity? And if it is a hack just to pass Acid 3, shouldn’t something be done about either the test or the browser to fix the bug properly?
March 27th, 2008 at 5:32 am
Congratulations!
Like others I had 99/100 the first time and 100/100 for reloads (on rev 31370)
March 27th, 2008 at 7:04 am
First load on r31368 on Windows, 99/100 with test 80 failing: kungFuDeathGrip is null.
Reloaded (hit ctrl-r) and it worked fine up to 100/100.
IIRC I had it fail yesterday at 99/100 with “null glyph” or something like that. So apparently some objects are sometimes not being loaded properly. I can’t be arsed to file a bug report atm though
March 27th, 2008 at 7:25 am
Build 31370 gets consistently 94/100 on my Powerbook G4 10.4.11, reloading or not. Need a bug report?
Test 69 failed: Undefined value
Test 74 failed: getSVGDocument failed for referencing an svg document.
Test 75 failed: Value undefined (result of expression svg.setCurrentTime) is not object.
Test 76 failed: expected ‘0′ but got ‘100′ - Incorrect animVal value after svg animation.
Test 77 failed: expected ‘3′ but got ‘0′ - getNumberOfChars returned incorrect string length.
Test 78 failed: expected ‘90′ but got ‘0′ - getRotationOfChar(0) failed.
March 27th, 2008 at 7:47 am
I have r31368 on Windows and I am consistently getting 75/100 with a “LINKTEST FAILED” message.
March 27th, 2008 at 7:52 am
@ suika,
You should fill out a bug report.
@Unr3a1,
You are running Safari 3.1’s WebKit engine, not r31368.
March 27th, 2008 at 8:28 am
I am the only one to constantly get over 200ms on test 65 under Windows XP ?
I can’t explain how that could be so slow without an entry in the bug tracker.
March 27th, 2008 at 10:05 am
Good work! This test is really important, and sets a good quality standard for the time to come. If only IE vanished away… I hope Acid4 comes in some months, after a few more browsers pass this one. Still, I wouldn’t like for it to become routine, it would lose its power.
I found the difference between 31342 to be reaaaaaally picky [1]. What caused that? A CSS property?.
I want to note that it is most likely that Opera’s developers got there first. What was the difference? The license!
Applause for both WebKit’s and Opera’s devs.
P.S. Please enable OpenID for this site, I had to register for this one comment.
nachokb
[1] http://www.flickr.com/photos/nachokb/2366189473/sizes/o/
March 27th, 2008 at 10:08 am
Firstly, congratulations are in order!
When I run the latest build, I do get to 100, eventually, but the first two times I ran the test, it halted at 98.
Is this something you are aware of?
March 27th, 2008 at 10:09 am
Damn, now I see where the difference was. It was really a bug [1].
[1] http://trac.webkit.org/projects/webkit/changeset/31356 (it disabled subpixel AA on certain circumstances).
nachokb
March 27th, 2008 at 10:10 am
P.S. 31368 (win) is my build revision!
March 27th, 2008 at 11:55 am
I still get intermittent failures using the latest Windows beta that drop the score down to 98 or so. And how are people getting the test times and stuff? The Inspector console doesn’t show anything.
March 27th, 2008 at 3:11 pm
Congratulations! I am so glad WebKit/Safari is leading the way for standards and web developer sanity. Thank you for all the hard excellent work!
March 27th, 2008 at 3:12 pm
Great work guys - competition does improve the breed!
March 27th, 2008 at 4:04 pm
Well shiver me timbers… I am a total newb at this safari webkit stuff. how do I run the correct webkit?
March 27th, 2008 at 4:04 pm
What am I doing wrong, no matter what I can only go up to 94/100 and I have the newest build as indicated. Is there something I need to turn off more than all the plugins and such?
March 27th, 2008 at 6:09 pm
WebKit-r31376 on Windows. First try, 98/100 with two tests failing:
Test 79 failed: character position 6, which is between a normal character, which has some kerning after it and the first character of a two-character glyph, which has some kerning before it, is 21600 but should be 21800.
Test 80 failed: kungFuDeathGrip was null
Reloaded, now scoring 97/100 with three tests failing:
Test 77 failed: expected ‘4776′ but got ‘5550′ - getComputedTextLength failed.
Test 78 failed: expected ‘90′ but got ‘0′ - getRotationOfChar(0) failed.
Test 79 failed: character position 6, which is between a normal character, which has some kerning after it and the first character of a two-character glyph, which has some kerning before it, is 21600 but should be 21800.
March 27th, 2008 at 6:11 pm
@Unr3a1,
Simply download the nightly build, your mac should automatically mount the disk image, then drag the webkit icon to your applications folder. Webkit will use all of Safari’s plugins, bookmarks, and preferences, only it will use the nightly build’s engine.
March 27th, 2008 at 6:21 pm
Mac OS X 10.4.11, Nightly r31376 — 99/100
March 27th, 2008 at 6:24 pm
I should clarify my last post. Sorry…
iMac Fall 2006, Mac OS X 10.4.11, Nightly r31376 —> 99/100
From AcidTests:
Failed 1 tests.
Test 26 passed, but took 86ms (less than 30fps)
Test 79 failed: character position 6, which is between a normal character, which has some kerning after it and the first character of a two-character glyph, which has some kerning before it, is 21600 but should be 21800.
Total elapsed time: 0.28s
March 27th, 2008 at 6:43 pm
A major step forward guys, congratulations!
Wish some _other_ browser developers would be so interested in innovating as you are.
March 27th, 2008 at 7:52 pm
@Thinine: click on the “A” in the Acid3 test to get a javascript alert-box showing you your errors.
March 27th, 2008 at 10:47 pm
@giromide: An attempt at fixing up the Qt build earlier today introduced a regression that caused test 79 to fail as you mention. This was fixed again in r31381, so the latest nightly build will once again pass.
March 28th, 2008 at 6:40 am
I have 2 computers one with OS X 10.5 (Intel) and one with OS X 10.4.11(G4). WebKit r31388 on 10.5 is getting 100/100 but only 94/100 on 10.4.11. If someone could enter this into a bug report that would be great, I would but I don’t really know your system for entering bugs and just don’t want to f it up. Great work by the way, can’t wait to see this as a release.
March 28th, 2008 at 7:11 am
This is already a bug, see http://bugs.webkit.org/show_bug.cgi?id=17884
Please create an account and vote for the bug, I still think this is somewhat of a very low priority for the devs, but many people are seeing the failure.
March 28th, 2008 at 1:58 pm
Got 100/100 with my webkit r31386. However, if I reload the page, I only get 99/100. then if i reload again, I only get 98/100. On the third reload, I got the 100/100 again.
April 1st, 2008 at 8:08 pm
[…] con la noticia sobre WebKit y su 95/100 en el Acid3. No voy extenderme en eso, hace unos días que Webkit ya llegó a los 100/100 y Opera por su parte ha superado esa […]
April 1st, 2008 at 9:20 pm
[…] Of News : Webkit Blog […]
April 2nd, 2008 at 12:11 am
[…] think Opera outed Acid3 support about half a day before the WebKit team announced achieving a score of 100/100. I think this is great news, and I love the chase between web browsers to become better at […]