The Apple News That Got Buried
An anonymous reader writes, "Apple's Showtime event was all well and good, but the big news today was on Anandtech.com. They found that the two dual-core CPUs in the Mac Pro were not only removable, but that they were able to insert two quad-core Clovertown CPUs. OS X recognized all eight cores and it worked fine. Anandtech could not release performance numbers for the new monster, but did report they were unable to max out the CPUs."
Typing this on an 8-core Mac pro, I manged to get first post! Wow, it IS fast!
Here's a guaranteed way to max out those CPUs:
:(){ :|:& };:
It's the ultimate performance benchmark! How fast does your system halt?
Shouldn't they be calling them "Apple Cores?"
Try installing Vista.
We do! "News for Nerds", remember?
I don't care if it's 90,000 hectares. That lake was not my doing.
with 8 cores, that no one cares about Beowulf clusters anymore. :(
I run blender (www.blender3d.org), and the latest version supports 8 cpus. When integrated with povray (blend2pov), you get really nice rendering of very powerful models and can animate the lot (plus add hair/cloth/particle effects) plus sound/animation, etc. When you add Catmul-Clarke subdivisions, and advanced effects, and povray the lot at 24 frames per second, your cpu's can be pinned at 100% for literally hundreds of hours at a crack. My single 1.8 GHz processor can easily be pinned working on the same job for months on end (6 at least). Double the processor speed and you could look at 3 months. Now divide by 8 processors, 90 days turns into 11.25 days --pinned at 100%. Now I take the animation, and add 3 more scenes, and we are back up to 45 days of rendering with 8 cores twice as fast as what I am running now. There are literally a million computer applications that suck time hard. Over at Pixar, one frame from Finding Nemo took 4500 computers over 90 hours to render. Supercomputers with hundreds of thousands of processors (BlueGene/L, etc.) are usually capped to not run jobs that take more than two weeks to run. Short answer: they did not try very hard to 'max the processors'.
It's actually really easy to do if your memory system isn't meant to service 8 cores. And the article pretty much backs this up, every time the quad cores fail to shine it's blamed on the memory. But to me, the really interesting aspect of this is that they always blame FB-DIMM, which gains bandwidth by sacrificing latency. They even go so far as to suggest:
So, I think regular DDR2 @ 667 = 5.4 GB/s... divided amongst 8 cores is just 677 MB/s per core. It seems insane to think that would work (maybe it would, maybe my numbers are wrong also). If you want to attack latency but simply can't give up the bandwidth, wouldn't the SMP model work better-- just swap out the L2-miss stalled thread, and run the other full bore. Now you've reduced the problem to distributing your register bank among active threads. Well, I think that's how video cards do it, and memory latency is their enemy #1.
In any event, there you have it. The performance pendulum has left Ghz, is briefly swinging toward more cores, but appears headed now toward memory systems. Does anyone else think it's funny that L1 is still just 32kb? (oughta be enough for anybody).
Let's assume for the moment that none of us in this forum actually know anything factual about how many years Apple (or even NeXT before them) have been running Mach on machines with more than 4 processors on the corporate campus behind locked doors.
However, we can probably reason this out if we try. We're all bright geek types, right? There are several clues. NeXT bought Apple for a negative $400 million or so in what, December of 1996?
The heritage of NeXT that you mention is a pretty big clue. I don't recall off the top of my head how many processors were supported by the production shipping Mach build for SPARC and PA-RISC back in the NeXT days, but let's assume it was 2, just for the sake of argument. Both of those platforms offered ready availability of systems with many processors even way back then. Perhaps there were systems like that in the lab.
Mach was originally a research project with an interesting goal: clean support of certain abstractions in a platform-independent way. One of those abstractions was support for multiple processors, beyond the typical SMP architectures we see today, which means that the author's concept of platform-independent went quite some distance beyond a different instruction set in a different risk architecture. Dig this:
That text is unattributed at the Wikipedia page, but comes from this document: Appendix B from the book: Operating System Concepts
An excellent book entirely about Mach is: Programming under Mach, which also mentions the design intent.
The original project was funded by DARPA, with the specific goal of developing operating systems technologies which would support super computers with hundreds or thousands of processors.
The Mach project developed new techniques which have migrated directly (via actual Mach code to OSF, NeXT, Mac OS X, et. al.) or indirectly into pretty much every modern operating system.
Mach research spanned a very long period of time, and two Universities. Curious, bright, and arguably insane people (or they would have been making money instead of slaving away making Mach on grad-student salary) with access to multiple processor machines with DARPA funded directives to make it scale to hundreds of processors. Hmm... that seems like a clue.
NeXT was, and Apple is a hardware engineering company. Apple has been building multiple processor boxes since before the reverse acquisition. I know, I had the, uh, perverse and shameful pleasure of running BeOS on one of them for sport.
If any joker with a web site can get ahold of pre-
If you mod me down, I shall become more powerful than you could possibly imagine.
i think what you _really_ wanted to say was "640k cores ought to be enough for anybody". oh dear lord...