Sunday, April 17, 2005

Safari 1.3 from Panther 10.3.9 is FAST

Apple on Friday released the 10.3.9 update to Panther. It addresses a number of different issues, but the most noticeable update is to Safari. Safari in Panther is now at version 1.3, and it gets much of the core of Safari 2.0, which is coming soon in OS X 10.4 Tiger.

Dave Hyatt comments in Surfin' Safari weblog about the changes:
Those of you running Panther can now update to 10.3.9. This update includes Safari 1.3 and new versions of WebKit, WebCore, and JavaScriptCore that contain thousands of improvements we've made to the engine since Safari 1.2.

What you are getting is all of the new standards support, new WebKit capabilites, site compatibility fixes and performance optimizations that are also present in Safari 2.0 for Tiger. The layout engines for the two are virtually identical.

Here are some of the highlights:

Page Load Performance
Safari 1.3 loads pages overall 35% faster than 1.2 as measured by IBench. In addition to improving the overall page load, Safari 1.3 will display content sooner than 1.2 did, so that subresources don't hold up the initial display of the page.

JavaScript Performance
We have substantially improved the performance of the JavaScript engine in Safari. I encourage you to check out Safari 1.3 on this benchmark for example to see the improvement relative to 1.2.

Did I mention it's really really fast? :)
On my 1.7 GHz Cube G4 7447A, the perceived speedup in real-life surfing is quite impressive, and the speedup as measured by BenchJS is nothing short of astonishing. It's a ten fold change in benchmarked JavaScript performance:

One note of concern however, is Test 7. This test calculates the day of the week on which Christmas lands each year. With Safari 1.3, every day listed starting in 2038 is Friday. I don't know if this error is an error in the original JavaScript code, an error in the output by both Safari 1.2 and Safari 1.3, or an error unique to the new Safari 1.3. Unfortunately, I did not notice the error until after I upgraded my machines.

One interesting point of note also is the claim by some that enabling Quartz 2D Extreme in Tiger 10.4 can slow down Safari 2.0's BenchJS performance significantly on some hardware.

[Update 2005-04-18]

Thanks to Screed and Squozen for pointing out that the Xmas calculation error is present in Safari 1.2 as well. There is no such problem with Mozilla Firefox in Windows 2000 or Microsoft Internet Explorer 5.2 in OS X 10.3.9.


Screed said...

Re: Christmas calculation

Nope, Safari 1.2 also does all Fridays from '38 or '39 on. Time to interrupt Hyatt from his AcidTest pursuits.

Squozen said...

I've commented on his blog (giving Eug credit, good pickup) - any way to email him about it?

Anonymous said...

Safari 1.3 also broke the website.

Anonymous said...

Isn't 2038 the last year that can be calculated from the Epoch (Jan. 1, 1970) using a 4-byte value?

Maybe I'm mis-remembering this.

Eug said...

"Safari 1.3 also broke the website."

Yeah, a friend of mine pointed that out to me shortly after 10.3.9 came out, so I filed a bug report with Google. Today (Monday) I got an email back saying that it's fixed now. (I haven't checked yet though since I don't have a Mac with me at the moment.)

"Isn't 2038 the last year that can be calculated from the Epoch (Jan. 1, 1970) using a 4-byte value?"

Hell if I know. :)