
SGI And /Massive/ Linux Machine 72
Hi all,
Just thought I would send out a note outlining the state of the mips64 port. Ralf, Ulf and I have been actively working past few months to bring up Linux on the SGI ccNUMA machines.
The executive summary: we have achieved multiuser boot on o200 and o2000s. The largest configuration is a 32p, 16node machine (only approx 4G worth of memory was populated over the 16 nodes, the system can take 4G * 16 node worth of memory). This machine has 10 PCI busses, with 24 scsi controllers and 10 disks. (Sample output is at
If you are interested in the system architecture and details of the port, read on. The o2000s use R10000 series of MIPS processors. Each machine is comprised of modules, each module has 4 node boards with max 2 cpus and 4G memory on each node, and IO boards and routers. In a module, the two alternate node boards are each connected to a XBOW. Each XBOW possibly is connected on the other side to a number of PCI busses, which is what the IO boards connect to. Apart from this, there are routers in the system that provide connection paths between all memory to all cpus, to create a true CC-NUMA architecture.
On the software side, we are still struggling with compiler and binutils issues. The kernel itself is 64 bits, created by cross compiling on an ia32 box. We have not attempted 64 bit user program compilation or execution. The root disk is currently very close to the MIPS/Indy root disks. The architecture specific code uses the CONFIG_DISCONTIGMEM code to support memory on all nodes. The architecture specific NUMA features currently are: 1. replicate the kernel text on all nodes, so that no one node becomes a memory hot spot (unfortunately, the kernel data has to reside on only one node). 2. replicate low level excpetion handler code on all nodes. The architecture code also turns on CONFIG_NUMA to take advantage of node-local page allocations. (A CONFIG_NUMA patch that I have been submitting to Linus was put into the kernel in test6-pre1). For more information on NUMA and ongoing work, refer to
The purpose of doing this port is to boot Linux on bigger systems that we have, in order to do cpu/memory scalability studies. This also lets us do NUMA performance work in the future. Another advantage is to be able to leverage this work on the upcoming SGI CC-NUMA Itanium boxes, which will be an SGI supported product. Initial results from scalability studies using mips64 is documented at
The OSS SGI site.
Kanoj
Re:A perfect machine for render land and other use (Score:1)
----
Re:I see why they ditched Cray (Score:1)
Even better, the engineers who did the due diligence on the Cray acquisition said "don't do it". McCracken was obsessed though and the disaster happened.
Re:I see why they ditched Cray (Score:1)
Re:Finally (Score:1)
Re:A perfect machine for render land and other use (Score:2)
Huh? This system can do genetic pattern matching, but it's far less cost effective than a pile of small machines. Fortunately, the people who actually spend millions of dollars on machines to solve problems like gene matching investigate the problem more carefully than your friend.
Two companies doing this problem are Celera Genomics and Incyte. Incyte has a cluster of 1,200 x86 machines (3,000 cpus) running Linux. Celera Genomics has a cluster of 1000 Alpha cpus in 250 nodes; Celera purchased their machines before it had been shown that Linux could handle that kind of task.
And a company that specializes in getting fast storage for the movie industry is MountainGate.
I'm not so sure that even the rendering example is really valid. Much rendering treats rendering as an embarrassingly parallel problem: invidual frames slow, entire movie fast. That's much more cost-effective.
Re:Someone... (OT) (Score:1)
But it takes one to know one
Re:A perfect machine for render land and other use (Score:1)
It looks like the major actors finally realize that developing and using systems for the future has a lot in common with clearing a field of land mines. There are too many gotcha's that bite in places you didn't know you had places. While I cannot imagine IBM and whatever has replaced the seven dwarves totally embracing open source, I think that they realize that it is suicidal not to utilize the advantages of open source in the core basic areas where it has an extreme advantage. I have nothing to back it up, but I think the interest of the big boys comes from the anecdotal tales of long uptime, not the well configured and it does its job, but the ill-configured, reconfigured, abused system that managed to stay up when they would be excused for dying from being hacked to death.
E10K (Score:1)
According to rumor, Sun's next-generation hardware is ccNUMA, though.
Re:Intel/Linux blows MIPS/IRIX away!!! (Score:1)
Re:sgi stuff is SLOW - NOT! (Score:1)
Don't waste $500 on a x86 chip. Just get a REAL COMPUTER for the same price and see!
Amen, brother.
Re:Intel/Linux blows MIPS/IRIX away!!! (Score:2)
Its Mine!!!!!! (Score:1)
-Rick S
"Charlie Don't Surf!"
-Lt Colonel Kilgore
Re:I see why they ditched Cray (Score:1)
Re:I see why they ditched Cray (Score:1)
Cheers
Re:fake latin does not make people look smart. (Score:1)
linux linuces unix unices
linucis linucum unicis unicum
linuci linucibus unici unicibus
linucem linuces unicem unices
linuce linucibus unice unicibus
But Latin has 6 cases!
Didn't you forget the Vocativ?
CU,
Maori
Re:fake latin does not make people look smart. (Score:1)
All I know is... (Score:2)
Unless you're talking about this. [fufme.com]
Re:sgi stuff is SLOW (Score:1)
Re:Perhaps (Score:3)
a) There are in fact 14 scsi devices attached. (13 drives and a cdrom).
b) Even so only 4 of the 24 scsi hosts are actually used (So 20 scsi hosts are being 'wasted', not 10).
Your initial question ('There isnt anything special about 10 drives, so why have 24 scsi buses?') was backwards. They are developing on a big-arse piece of machinery here. The point here isn't making efficient use of 14 scsi devices, it's showing that Linux can run and access 24 scsi buses. Your question should probably have been 'If they want to really show that you can use 24 scsi hosts shouldn't they have a shitload more drives'. Quite possibly for a proper demonstration, but for a dev box then scattering a few drives over a few hosts is probably satisfactory.
spelling (Score:1)
Re:I see why they ditched Cray (Score:1)
Uh, no. The O2000 was ready to go when the Cray thing (merger/mistake) happened. It pissed a LARGE number of hard working SN0/LEGO engineers off that the Origin interconnects were called "CrayLink" when Cray had zero involvement (at least at that point). I left soon after, so I dunno what Cray ever did ultimately for SN0 or SN1
Re:A perfect machine for render land and other use (Score:2)
But... we also had lighting tests and renders for marketing that needed to done quicker than a nightly turn arround. That is when we used the O2000. We turned this machine into our file server, so now we can only dream of when we could render single frames faster.
In a perfect world, both systems would exist. A bunch of Linux boxes for 24x7 renders, a massively parallel box for large or quick turn arround single frames that could be used for "normal" renders 24x7.
24 scsi (Score:1)
Re:sgi stuff is SLOW (SO What? (Score:1)
Someone... (Score:5)
nf
I see why they ditched Cray (Score:3)
I am supriesed it has taken them this long to get some deals like this out the door.
sgi and linux (Score:3)
10 pci bi (Score:1)
Re:I see why they ditched Cray (Score:2)
This is about running Linux on BIG machines which can be called small supercomputers in and of themselves.
Why? (Score:2)
Commercially, if I want lots of nodes (16 nodes here), with Linux, I'm more likely to think Beowulf. If I want them to all appear as one machine, to be honest if I'm spending this sort of money I can see the benefits on going with Sun and Solaris. If I want lots of virtual linux machines running on one large easily-managable system then we already have Linux on S/390..
Can anybody tell me what the real commercial incentive is to run Linux on bigger systems? I'm just curious that's all. Perhaps I'm missing something here (almost certainly I'm sure).
24 scsi buses + 10 disks = 14 wasted scsi buses (Score:1)
I cant see why you would need moe than 3 scsi buses to run 10 drives, that leaves 21 free.
It would be nice to see how fast they could get a software raid0 array going.
Re:I see why they ditched Cray (Score:3)
Numa is not even close to how beowulf works. NUMA allows the procs to actualy work together with shared memory instead of a near shared memory that beowulf provides.
Trust me, the cray link is much more efficient than what a fiber connection bewteen beowulf boxes would be, even if you went all out and did some sort of cube configuration.
If beowulf was better, people wouldn't be shelling the money for the SGI boxes when they need the horse power, they would have some "wulf" farm working on the problem.
... and then three come along at once (Score:1)
OED [oed.com] 2nd edition gives "busses" and "buses" with the former appearing in older citations.
Derwen
Re:Why? (Score:4)
NUMA servers based off the Itanium processors.
Porting IRIX to this new architecture will be
a huge undertaking as it has been tied to the
MIPS architecture forever. Linux on the other
hand ports quite easily. SGI is doing research
as to what it would take to get Linux to
run well on massive boxes like these.
If linux can cut the mustard there will be
no need to port IRIX and that will save SGI
one huge headache.
Re:Why? (Score:3)
A perfect machine for render land and other uses (Score:5)
Some jobs do not parrallel well, such as individual frame rendering. With 24 boxes, the 5 + minute overhead of loading the scene file plus the memory spent on loading the textures and the geometry would be done on each machine, costing you 24x's the overhead of doing it on one machine. Trying to do this with a "quasi" shared memory system would kill the network. But would remove that hidious overhead.
Doing this on a NUMA box fixes all of those problems. The memory is shared. The procs all look like one machine. The system runs smooth and well.
This is why SGI is still in the large graphics server environment. People want individual frames done fast.
The benifit of this being a linux box and not Irix....
I, a huge linux vs. irix advocate, strugle to see why this would be good. Most of the apps that I would use are built for Irix first and then Linux (like Maya's renderer). I can see where others might have custom apps to use this, but the code would probably port to Irix just as easily as it would to Linux on the MIPS.
It is a step in the right direction, IA64 NUMA boxes running linux. The ultimate in render farm machines.
The perfect purpose for this computer (Score:1)
Discover... (Score:4)
Why does my kernel not discover something like that?
10 Buses!!! (Score:1)
I want one
Re:I see why they ditched Cray (Score:1)
Re:Someone... (Score:1)
Guess we know where my mind is right now.
All that and UUCP too! (Score:1)
Logo (Score:1)
Re:I see why they ditched Cray (Score:1)
Re:sgi stuff is SLOW (SO What? (Score:2)
Re:fake latin does not make people look smart. (Score:1)
most declination forms.
The only difference is the us-declination where
the ending is replaced by an o.
Thus nominativ "Marcus" becomes "Marco" or
even "Marc".
Vocativ means "calling form", it is only
used for names and titles in direct speach
to the called person.
regars,
angel'o'sphere
Re:Why? (Score:1)
I disagree. I've read some stuff about the O3000 last week and it's maybe a nice box from the technical point of view, but as a ISP I wouldn't buy one.
I haven't ever worked with SGI boxes and this is just a quick shot. I think, the SGI boxes are nice, but not tailored to our demands. Maybe they are nice for universities or somewhere else, where availability isn't that important.
Re:I see why they ditched Cray (Score:2)
Re:Perhaps (Score:1)
They're just proud as hell that they've actually booted a o2000 with Linux... All those SCSI buses are probably just there because they were in the machine when they got it
One OS (Score:2)
From a less abstract perspective, I would rather want just NT than just one of any Unix OS. NT has more apps and is a generally a better fit for that lowest common denominator spot. Of course, I don't like using sporks, I prefer a spoon and a fork.
Then again, to finish out my wishy washy opinion this morning, it might be best for SGI to get out of the OS business. If SGI, IBM, and Compaq get out of the OS business (transitioning to Linux or some other common code base), then they might be able to leverage each other and focus on less redundant tasks.
need coffee....
Joe
It's neither Busi or Buses, it's Bi (Score:1)
Just a comment. I can't think of any other things that end with '..us' so I can't verify this.
--
Daniel Zeaiter
daniel@academytiles.com.au
http://www.academytiles.com.au
ICQ: 16889511
Re:Plurals (Score:1)
It's in two of my dictionaries at least:
From The Free On-line Dictionary of Computing (07Oct99) [foldoc]:
boxen
(1994-11-29)
From Jargon File (4.0.0/24 July 1996) [jargon]:
boxen
Fanciful plural of {box} often encountered in the phrase `Unix boxen', used to describe commodity {{Unix}} hardware. The connotation is that any two Unix boxen are interchangeable.
--
Re:It's neither Busi or Buses, it's Bi (Score:1)
Overkill (Score:1)
Re:fake latin does not make people look smart. (Score:1)
cy
Re:A perfect machine for render land and other use (Score:2)
If they can get Linux to run on most of their machines, then they will get access to all (or most of) the Linux stuff and they don't have to maintain the kernel for themselves (which I believe is not a cheap thing to do)
Futhermore wouldn't it be nice to have an "IT-infrastructure" with only one OS to support - no Irix, AIX, Windows, etc. to support - only Linux.
If this is completely wrong, then it is most likely because I don't know much about system administration or Linux/Unix generally
Perhaps (Score:1)
Some people are way too quick to criticise (or if that wasn't criticism, some people are way too quick to ask stupid questions...).
Little to do with Cray (Re:I see why they ditched (Score:1)
Either way this is a lot of horsepower to throw at any problem. Beowulf is cheaper for the graphics work however. Nothing else can approach the economies of scale piled up behind Linux on midrange PCs.
Re:A perfect machine for render land and other use (Score:1)
I would love to have one server OS and tune the platform to the job. But... it will be a few years before places are doing this. This port is a step in the right direction.
Re:Why? (Score:4)
There are many other reasons as well, but frankly this type of machine is what many people have been waiting for. The total cost of ownership of all those Sun machines is far larger than of this machine. The performance of this machine is significantly ahead of your typical Sun machine.
One of the nicest features of this machine is that you can reconfigure it with a reboot (no recabling) to come up as a single large machine or as multiple medium machines, or many single machines. You can configure the computer to your needs, not shoehorn the problem to fit within a solaris boxes limitations. And unlike on other OSes, the partitioning actually works here.
Re:Why? (Score:2)
It's a research project. Maybe there's a commercial incentive to run Linux on bigger systems. Maybe there isn't. You have to try and find out. And to try, you first have to get Linux to run on bigger systems. That's what they've done - running Linux on a small bigger system. (And that's all the information the article gives - they've booted in on a 32 CPU machine, it didn't say anything about performance)
-- Abigail
Finally (Score:3)
This little project holefully will prove that it can be done, and one might hope it's results will be applicable to less exotic multiprocessor hardware (say an 8 or 16 way x86 server).
-josh
Re:sgi stuff is SLOW (Score:1)
I'll always love those old Indy's...
Re:I see why they ditched Cray (Score:4)
Um, their Cray division did alot of the work for the O2000! In fact at release the >64CPU configs were only avail from cray. Oh, and the frame to frame comm channel? It's named the "CrayLink".
Nice machines though, even if a bit long in the tooth (the O2000 is fourish years old, the O3000's should be announced anytime now, go look at comp.arch)
Sure, if you need very little communication between machines Beowulf is great, and the O2000's expensave comms (the xbow and craylink) are waisted. If you need a lot of comm, but not a lot of com a O2000 is great. If you need a lot-lot of comm maybe you are out of luck until the O3000, HP SuperDome, or IBM Power5 show up.
Quick MP break down:
A NORMA (or better) is great for raytracing, crypto cracking, and the like. A UMA is great for N-body simulation (with large N). I wouldn't want to track the flow of air molicules over a wing with a Beowulf, but I wouldn't want to pay for a ccNUMA if I was "just" running PR-Renderman.
Re:Why? (Score:2)
What are the inherent limitations of the information infrastructure? Certainly not hardware (vendors are keen to flog as many boxes as possible) or software (internet distribution costs are pretty much zero). The inherent bottlenecks are development time and trained staff. Linux attracts a pool of talent or at least the opportunity to learn the guts of a system without paying a hideous cost in acquiring system tools and development environments (cough*Microsoft*cough). Distribution boils down to boring physical aspects, you don't put datacentres and six-9 reliable systems in unstable locations (e.g. earhquake zones) or where there is a limit in the technology level. Given inherent limits in manpower you will see a move towards consolidation once the complexity passes a critical point as the cost of training exceeds the value for a small site. Currently web sites are still pretty primitive but once the next generation of tools are refined (e.g. Zope, ACS, etc) expect to see more critical mass building up. It's not so much the CPU but the storage as a couple of petabytes tends to be rather difficult to shift :-).
Given that latency is a big problem and getting bigger with faster CPU clock speed (e.g. 1 disk read = x megainstructions), it then makes sense for CPUs to be sited really really close and from a management/administration viewpont, a clump of systems is easier to manage than a zillion boxes (again issues to do with backups and system security). Why do we have petrol stations and gas farms (at ports/airports/etc)? Because you put the resources near where they will be used. Again, if you use the motoring analogy, Cisco builds the highways, SGI builds the gas farms, Microsoft builds the tollroads, etc ... The skills required to create highly scalable *systems* is scarce which is why even PCs have yet to go beyond dual processors, and outside niches you might as well forget about parallel software that can use the horsepower.
So SGI is taking a strategic look at their markets and IMHO rebranding themselves as the BMW of the internet world focusing on industrial-strength trucks. The trends they wish to ride on are commodity OS (large pool of development to overcome constraints of talent) plus increasing outsourcing of specialist internet services (consolidated servers to achieve economy of scale - see their O3000 brick concept to understand their direction). In order to play you have to pay (in terms of a learning curve).
LL
Re:Discover... (Score:1)
Re:Why? (Score:1)
Re:Little to do with Cray (Re:I see why they ditch (Score:3)
Beowulf is not good for rendering. Each job can have up to 500-700 megs of memory being used. Share this over a 100bT or Fibre or some other network protocol. It won't work.
We use other approaches for rendering. We spread the shot over a machine, not the frame. We eat the overhead of starting the renderer and reading the file. If possible, for those users who need one frame done fast, we threw it on our 4 proc O2000. That machine was taken from me, so now they just have to wait 4x's longer.
Beowulf has its uses. Production rendering is not really one of them.
Re:A perfect machine for render land and other use (Score:1)
Agreed. The memory bandwidth makes a big difference in being able to handle fine-grained parallelism. (Beowolf, OTOH, is better suited for coarse-grained parallelism.)
Using a system such as this DRAMATICALLY reduces the delay required to propagate interim results to other processors. (Memory is so much faster than disk, and, if memory serves me, shared memory greatly improves on performance-robbing cache synchronization.)
Another perfect application for this kind of system would be investigating the Human Genome. It's pattern matching on a huge scale. And, from discussions with a friend who decides on and purcahses the hardware for just such a company, his challenge is getting enough storage, and being able to get to it FAST. This looks pretty fast to me! :)
Re:Someone... (Score:2)
Nah. See if we can get them to run a simple little Java program on Netscape! <grin>
cf: Java Security Hole Makes Netscape Into Web Server [slashdot.org]
Re:Perhaps (Score:1)
How can you test the capabilities of a scsi bus if nothing is plugged into it, they may as well leave them in their boxes on the shelf for all the testing it will do.
If it makes any difference i asked purely out of wondering, I would wonder the same thing if there were 24 ide buses and 10 dirves. But if you must know i do consider scsi to be something that only has merit in a few situations, scsi is mostly used by stupid people looking for an expensive toy.
Re:I see why they ditched Cray (Score:2)
Not exactly. They found a way with NUMA to leverage Cray's technology... to get high-performance; they now just link a bunch of "Cray-ons" together! <grin>