Why not more MP systems?

The record for the highest cpus in a unix system was probably set by my best friends oldest cousions friend. He is designing a 540 cpu system running Solaris 8.
 
The cpus were Compaq (formerly DEC) Alphas. They were known for high clock speeds that were ~100-200 mhz above the Pentium crowd in 1997.
 
The SGI Origin 3000 series and the IBM ASCI White UNIX servers are capable of 512 processors per box. With the scalability of UNIX you can cluster these boxes for even more CPU power. This is why UNIX rules the corporate mainframe arena. Scalabilty.
 
drooooooooooooooooooool.
Can I have one of those 512 processor machines (running OS X of course) --- I can just picture it now ;-) -- I would have my own T1 line, about 3TB of RAM, and about 3000000TB of HD space.... imagine all the programs and media files I could have .... about 25 cinematic displays (all touch screens of course for my virtual mixed).... all kinds of drives.... and kick-arse speakers to create on helluva music mix...

ok who is gonna pay for it?
 
Wow. I never stop being amazed by the origionality of Hervéish replys.

To be a little off topic, I was writing this and noticed that the main apple site is powered by Mac OS X Server. I wonder if it is just one box powering that huge site. That would be pretty special.
 
Trying to use several processors to emulate a PC is actually very hard. Emulating a CPU is very non-parallel, it has to decode each instruction in sequence. You'd get speed boosts by running the CPU in one thread and the graphics etc in another. On a two processor system, you'd end up having the emulator taking up one CPU and basically everything else, including the emulator's graphics code, running on the other one.

One solution I can see for boosting performance further would be to emulate a MP PC. You create a virtual PC CPU for each real one and let them spread themselves across your processors. This, of course, is highly reliant on a good MP implementation in the PC OS. XP/Win2000 (NT based) would probably be fine but I have no idea how good win98's multiprocessor support is or if it even exists. Anyone know more?

Could be interesting. Come on Apple and Connectix!
 
As it seems to be confusing for some people, this issue needs to be cleared up:

Applications do STILL need to be optimized for dual processors if they want to take advantage of both. The big change in OS X is that the OS itself natively uses both processors.

Let's say you have a 3D rendering application that is not optimized for dual processors, and you have a processor-intensive video editing application that is also not optimized for dual processors, and then you have Photoshop running natively on OS X that is optimized for dual processors. Say all of these programs run natively on OS X.

So you open your 3D rendering application and have it start a render. Because it is not optimized for dual processors, it can only take advantage of one processor. But because OS X is optimized for dual processors, it can assign this 3D rendering app to either processor it wants.

Same thing with the video editing application. OS X decides which processor would benefit the video editing application more, the 1st or the 2nd. Obviously, since the 3D rendering application is going to suck as much as it can out of the first processor, OS X will stick this video editing application into the second processor, because it can get more power that way.

Now you open up Photoshop. So let's say you start a lengthy gaussian blur filter on a huge file. Because Photoshop is optimized for dual processors, it can suck up whatever processing cycles are not used on both the first and the second processor. If it was not optimized for dual processors, OS X would have to allocate it specifically to one or the other processor. So in the case of Photoshop in this situation, it would significantly help to have dual processors if you're doing other processor-intensive tasks.

Now let's take all of these apps on their own. Either of the unoptimized-for-dual-processor applications still can only run on one processor even if other apps aren't using up those cycles, so OS X would still have to put these to one or the other processor. The result? Dual processors do not have much of an effect on these applications -- it will only help by allocating other tasks to the other processor, so as to allow more cycles for that process dedicated to that one processor.

For Photoshop on it's own? If you're not running either of the other applications, Photoshop can use almost all cycles of BOTH processors. In this case, dual processors would probably significantly help the rendering speed.

In OS 9, the operating system could not allocate any apps to the second processor. Only apps that were optimized for both processors could take advantage of it. Thus, dual processor Macs were basically pointless in the Classic MacOS days, except for maybe Photoshop.


So, what was this explanation all for? To show you that dual processors does not mean you have a computer running at twice the MHz. It is not that simple. Depending on the circumstances, dual processors can help you significantly, or not. However, since OS X debuted in March, I can assure you that buying a dual processor Mac is now significantly faster than buying a single processor Mac at the same or slightly higher speeds. Why? Because OS X can allocate processors to either processor, thus doubling the amount of power, BUT NOT MHZ, that you have to run your apps.


Oh, and by the way -- I think the flavor of UNIX that OS X sits on top of, namely BSD UNIX, can only handle 1-32 processor systems. I can't claim this for certain, but I remember hearing that somewhere.
 
Open the Terminal and type in hostinfo... So far only two processors are support but I'm sure it can be updated for more once, or IF the hardware is there someday.

Mach kernel version:
Darwin Kernel Version 5.2:
Fri Dec 7 21:39:35 PST 2001; root:xnu/xnu-201.14.obj~1/RELEASE_PPC


Kernel configured for up to 2 processors.
2 processors are physically available.
Processor type: ppc7400 (PowerPC 7400)
Processors active: 0 1
Primary memory available: 1408.00 megabytes.
Default processor set: 48 tasks, 136 threads, 2 processors
Load average: 0.12, Mach factor: 1.75
 
Back
Top