Apple's sleek upgrade
nytimes.com
nytimes.com
Ouch.
In general there's way too much fanboyishness in this article. I mean, seriously, it closes on a note of, "You can't see any improvements so JUST IMAGINE how much they've done under the hood!"
This is a good start:
http://en.wikipedia.org/wiki/64-bit#Architectural_implicatio...
The most obvious improvement is that 64-bit programs can address more memory -- more than 4 gigabytes of virtual memory in the same process. The less obvious bit that sometimes makes things faster is that when an x86_64 CPU is running in 64-bit mode it has access to more registers (basically the ultra-mega-low-latency memory for numbers and memory addresses and stuff that everything computed must pass through).
However, since pointers to blocks of memory are twice as large on 64-bit programs and many programs use lots of them, 64-bit programs usually use more memory, which means that there are more cache (the slightly less, but still ultra-low-latency memory that's between the registers and usual memory) "misses" -- i.e. things have to be grabbed more often from main memory, which relative to registers and cache is slow ... meaning that it eats some of the performance benefits of the extra registers.
In a nutshell, 64-bit programs are different. They're not "faster". The difference in bit-width really isn't something that makes a lot of sense if you don't know how CPUs work and can't be reduced to "faster".
more registers == fewer spills
For the average compiled program, fewer spills == faster.
=> Average programs run faster under x86_64.
Look at the big picture, whether it be pointers or integers into an array: the size of the index grows with the log of the number of things being indexed. You can't avoid this growth, but it matters less and less as you grow.
According to http://www.springerlink.com/content/h6803610u1124354/ (actual article is behind a paywall; but the information I'm referring to is on the first page, which is shown) the typical increase in size for Java objects is 40%. I strongly suspect that most programs that use a lot of memory (which are the ones that matter) do so because they have big wodges of non-pointer data (long strings, images, matrices, ...) and therefore get a smaller-than-average size increase, but I have no actual evidence for this.
Anyway, you'd only get a 2x increase if every single byte of memory used by your program were either a pointer or an integer that changed from 32 to 64 bits on switching to 64-bit code (e.g., a long in C or C++, for gcc at least). That's gotta be far from the truth.
I am not a hardware engineer though, so YMMV.
The big speed drops will occur with cache misses. Your L1 and L2 cache are only so big, and every cache miss will set you speed back about an order of magnitude.
It's true -- if you have more people than the car could hold. If you don't, the added overhead of using a bus will cause a comparative loss of overall performance.
Page 1 - http://www.google.com/url?q=http://www.nytimes.com/2009/08/2...
Page 2 - http://www.google.com/url?q=http://www.nytimes.com/2009/08/2...
There are hundreds more little tweaks. In all, Apple says that more than 90 percent of Leopard’s 1,000 software chunks were revised or polished. Many are listed at bit.ly/U1DzS
bit.ly/U1DzS > http://www.apple.com/macosx/refinements/enhancements-refinem...
That's a NYTimes fail, in my book.
Finally, the link isn't even clickable to me. I had to copy it into the address bar.
I don't believe link-shorteners are inherently evil or destroying the internet, but seriously, why use them in an article like this? How does it help anyone (me, specifically)?
A fail indeed.
Yeah they nailed this one...
It's a good article, Leopard seems pretty impressive (half the size, twice the speed etc) but the author is very easily impressed.
I'd be even more thrilled if Flash didn't make the CPU fans roar like a jet engine.
(I do, unfortunately, notice that the fan sometimes goes to medium in the middle of the night for no apparent reason. It's not quite annoying enough to shut down when I go to sleep, though).
I'm pleasantly surprised that, of all the things I care about, only ghc is broken.
http://www.pcworld.com/article/170843/adobe_responds_to_snow...
CS3 works fine on Snow Leopard.
It's the first time I don't feel in a hurry to upgrade, I mean snapiness is great but if it's in the same range as the 10.5.x upgrades, it can wait.
I havn't heard anyone saying he was really really impressed by how faster Snow Leopard is.
Oh joy, oh joy!!!! Maybe I am going to upgrade after all (this really bothered me).