Homebrew Cray-1
egil writes "Chris Fenton built his own fully functional 1/10 scale Cray-1 supercomputer. True to the original, it includes the couch-seat, but is also binary compatible with the original. Instead of the power-hungry ECL technology, however, the scale model is built around a Xilinx Spartan-3E 1600 development board. All software is available if you want to build one for your own living room. The largest obstacle in the project is to find original software."
Back when I was an intern with SGI, we took a day off* to visit the Chippewa Falls Museum**, which has a good-size collection of Control Data and Cray Supercomputer relics along with other items relevant to my interests***.
I got to poke around inside of an original Cray-1. To me, the most interesting thing about it was just how insanely packed the internal wiring was; I'd been expecting the intricate plumbing, but the sheer volume of wires running from Point A to Point B was really impressive. I mentioned this to the guy giving the tour, who turned out to be a retired manufacturing supervisor -- he told me that the hardest part of his job was finding women with both enough skill and small enough hands to handle the internal wiring jobs. The thing had been assembled *by hand*, every connection in this crazy bulk of wired clipped or soldered into place one after another.
Anyhow, after that I sat on the couch. It was not comfy.
* My boss was *pissed* about this -- she went around telling anyone that would listen that "interns are here to work, not go sightseeing". This marks the one and only time in my career that anyone in HR has ever done anything worthwhile, calling her up and telling her this was part of the program and she didn't get a vote.
** Seymour Cray moved to Chippewa Falls, his hometown, when he was still with Control Data because he felt most middle managers wouldn't want to drive that far just to bother him. Visionary man, that Seymour Cray.
*** Stuff from Leinenkugals.
Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
I built a PVP11 "supercluster" and started with Xilinx. The hardware is great, but their software toolset is horrendous.
After months of free time development, I switched over to surplus Altera Stratix II video decoder hardware, got a copy of Quartus II, and was moving within weeks. Altera would be my suggestion for any geek who wants to try something similar!
Not even a cray supercomputer can survive the slashdot effect.
Now that's closer to true News for Nerds, Stuff that Matters. Not the Mac fish tanks.
However, I am a little disappointed that he didn't do something with the tower part of his cray. Cooling perhaps? Blinkenlights?
How does it compare in performance with the original?
serving his website from it?
because it just got slashdotted...
He has the needed software for the FPGA, but he has (so far) been unable to find some software to run on the machine. At least that is what I got from the TFA. It seems like no-one (including various 3 letter agencies) have copies of stuff so "old".
Never the less, I have to admire the effort put into this.
This is the sorta hack that should feature on the front page, instead of machining tin can case and similar tripes.
Hope he gets some software for that thing.
Fuck systemd. Fuck Redhat. Fuck Soylent, too. Wait, scratch the last one.
What version of Windows does it run? I might have a copy here...
Doesn't everything run Windows?
Who would win this election: Andrew Weiner vs Andrew Weiner's weiner.
When's he going to build the VAX front end? TFA alludes to the fact that the Cray-1 needed a dedicated mini as a front end, and sounds like he might actually get a diskpack from one (or image thereof).
General Relativity: Space-time tells matter where to go; Matter tells space-time what shape to be.
You've been slashdotted.Yo dawg, you need a cray-1 super computer to serve as your server that discusses your cray-1 replica server.
theoretically, ECL would trounce any CMOS tech fabricated with current accuracy. It's just that it's so horribly power-hungry, that nobody will do this. For one thing, it would need megagalactic cooling.
"The agriculture ministry is not in charge of Gundam" - Japanese ministry official.
Send an email to the folks at the CISL division of NCAR.
They know a thing or two about Crays.
Again one of those instances where it'd be nice to be able to mod articles. This is the kind of stuff that needs to be on slashdot.
Free Pie! The Pie is Also Evil!
Turns out the system requirements aren't as stringent as once thought.
Now that's closer to true News for Nerds, Stuff that Matters. Not the Mac fish tanks.
However, I am a little disappointed that he didn't do something with the tower part of his cray. Cooling perhaps? Blinkenlights?
What.
In the lobby in front of the old supercomputer center. (The new supercomputers are up the road in Laramie where electricity is cheaper and the vice-residents home state at the time.)
From TFS:
All software is available if you want to build one for your own living room. The largest obstacle in the project is to find original software."
Um... why not just click on the little link provided there?
There is no "I disagree" mod for a reason. Flamebait, Troll, and Overrated are not substitutes.
I think there were (are?) four of Supercomputer Centers that had Cray 1 and later Cray X-MP machines. The Pittsburgh center did a lot of work with Carnegie Mellon, esp. the Robotics Institute.
I personally did one bit of work - porting a photometrically correct ray-tracer by Dr. Robert Thibadeau in the Image Understanding Laboratory from an Apollo workstation to the Cray at PSC - this would have been in 1989, I think. The one complication we had was that the Cray floating point format was different, so our first runs were all zeros. Other than that the code compiled and ran fine on the Cray. Of course, a run that took two weeks on the Apollo ran in about 40 seconds on the Cray.
A lot, maybe all of the work done on these machines was non-spooky research so perhaps you can track some of the professors at the associated universities, such as CMU, Northern Illininois, UCSD, Berkeley, etc. Also check out the weather folks - they have been among the biggest CPU cycle-burners for a long time. I worked briefly with one weather guy at a weather research facility in Wyoming but I don't recall any details - was it U Wy?
The SCs I recall are:
I'm sure that if you dig around in the universities you'll find folks who have stuff piled on a back shelf somewhere (probably in a tape format you can't read). Also look up in the old annals of the ACM SIG on supercomputing - that will give a line on researchers who were working on the Cray.
It's easier to be a result of the past, but more fun to be a cause of the future! http://www.spacefinancegroup.com/
If memory serves (and wikipedia can help for those who don't recall), the first systems were shipped with just an assembler. Livermore and Los Alamos pulled together the first OS for it. COS (the Cray Operating System) came a little later. The Labs stuck with their own OS for quite some time.
I haven't seen a source bundle, but since the OS shouldn't have been classified and it was paid for 100% tax dollars, someone probably could score a copy (Freedom of information request??).
As part two (see previous attempt) of my ongoing series in ‘computational necromancy,’ I’ve spent the last year and a half or so constructing my own 1/10-scale, binary-compatible, cycle-accurate Cray-1. This project falls purely into the “because I can!” category - I was poking around the internet one day looking for a Cray emulator and came up dry, so I decided to do something about it. Luckily, the Cray-1 hardware reference manual turned out to be useful enough that implementing most of this was pretty straightforward. The Cray-1 is one of those iconic machines that just makes you say “Now that’s a super computer!” Sure, your iPhone is 10X faster, and it’s completely useless to own one, but admit it . . you really want one, don’t you?
The Cray-1A Architecture
Now, let’s get down to specs - What is this bad boy running? The original machine ran at a blistering 80 MHz, and could use from 256-4096 kilowords (32 megabytes!) of memory. It has 12 independent, fully-pipelined execution units, and with the help of clever programming, can peak at 3 floating-point operations per cycle. Here’s a diagram of the overall architecture:
cray_architecture
It’s a fairly RISC-y design, with 8 64-bit scalar (S) registers , 8 64-bit/64-word vector (V) registers, and 8 24-bit address (A) registers. Rather than a traditional cache, it uses a ’software-managed’ cache with an additional 64 64-bit words (T registers) and 64 24-bit words (B registers). There are instructions to transfer data between memory and registers, and then register-to-register ‘compute’ instructions.
One of the coolest aspects of this machine is that everything is fully pipelined. This machine was designed to be fast, so if you’re careful, you can actually get one (or more) instruction every cycle. This has some interesting implications - there’s no ‘divide’ instruction, for instance, because it can take a variable amount of time to finish. To perform a divide, you need to first compute the ‘reciprocal approximation’ (something we *can* do in exactly 13 cycles, it turns out) of the denominator value, and then perform a separate multiply of that result with the numerator.
The vector instructions are particularly cool. A vector Add operation might take only 5 cycles to start producing results (remember, each vector can hold 64 values, so it takes 5 + 64 cycles to finish adding). Why wait for it to finish though? We can take the result output from the adder, and “chain” it straight into another vector unit (say a multiplier). And *that* only takes another 10 cycles or so, so we can chain that result into yet another unit (say, reciprocal approximation). Now, rather than waiting for the first operation to finish, we’re computing up to 3 floating point calculations per cycle. Clever programmers could sustain about 2 floating point operations per cycle, or 160 million instructions per second.
vector_chainingVector Chaining in Action!
The Hardware
The actual design was implemented in a Xilinx Spartan-3E 1600 development board. This is basically the biggest FPGA you can buy that doesn’t cost thousands of dollars for a devkit. The Cray occupies about 75% of the logic resources, and all of the block RAM.
spartan3_1600
This gives us a spiffy Cray-1A running at about 33 MHz, with about 4 kilowords of RAM. The only features currently missing are:
-Interrupts
-Exchange Packages (this is how the Cray does ‘context-switching’ - it was intended as a batch-processing machine)
-I/O Channels (I just memory-mapped the UART I added to it).
If I ever find some software for this thing (or just get bored), I’ll probably go ahead and add the missing features. For now, though, everything else works sufficiently well to execute small test programs and such.
The Software
When I started building this, I thought “Oh, I
I'm perfect in every way, except for my humility.
The new computing center is still under construction, so no supercomputers are located there yet. :-) Cray 1-A serial number 3 is in the hallway as an exhibit on floor 1B, and if you are near the NCAR Mesa Lab, it is open for self guided tours most days of the year.
Serial number 3 was in active use until its decommissioning in 1989 and ran COS (Cray Operating System). It was connected to the NCAR designed Hyperchannel network known initially as the NCAR Local Network (NLN) and later as the Mainframe and Server Network (MASnet). There were rows of 100 MB and 200 MB "washing machine" disk drives connected to it, and it had access to the NCAR Mass Storage System (MSS) for archival storage. Graphical output could be sent to plotters, large Xerox printers, B&W microfiche or B&W or color 35mm film. For a speed comparison, I once ran a Madelbrot generator to produce a 640x480 image on both the Cray 1-A and a Sun 60 workstation. The vectorized C code on the Cray took just under 8 seconds, the Sun several minutes to produce the image. Alas, we don't have much in the way of documentation anymore nor is there any of the original software.
You mean that nobody has ported GCC to it yet? It must run NetBSD right?
Shocked I tell you just shocked.
See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
That's MP/P for you...
If you were plowing a field, which would you rather use? Two strong oxen or 1024 chickens?
—Seymour Cray
Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
the REAL news story here is that the guy is actually married!!
damn... my wife doesn't know what a Cray is, doesn't care what a Cray is and certainly wouldn't want to help me paint it....
in other news, i approve of the Bailey's and Stoli bottles on the table behind the mini-cray...
imagine a beowulf cluster of these! ;)
frog blast the vent core
Ages ago, I heard this story. Can anyone confirm if this is true or not?
Seems Steve Jobs, upon the success of the first Macs, was getting ready for the next step and he went to Cray Computer to buy one (probably to help design the PowerPC?).
Anyway, Cray Computers were not just sitting on the shelf waiting to be sold, so it seems Jobs created an altercation and demanded to see the manager about getting one, so they called Seymour down to the lobby. Steve introduced himself and said words to the effect of “I’d like to use a Cray to design the next Apple Computer”. Seymour replied “Thats great. I used an Apple Computer to design my Cray”.
Hey Gary, I remember you. Did you know that someone wrote a software Perq emulator? Last I saw he had it running all the demo programs, but still had a few bugs in the graphics.
-- Steve Clark
Just how fast do you think the Cray-1 ran? I mean with all the attention to wiring length, gate delays and such you'd think this was a very fast machine. It "only" ran at an 80mhz clock rate. That's it! At the time when the fastest microprocessor had a 4mhz clock (Z80) that was fast, but mini computers and 360's probably had cycle clock rates in the low ten's of mhz. What made the Cray the the speed demon of the day was pipelining. It could execute several instructions per clock, something that didn't happen in the microprocessor world till much later (with the Pentium-Pro I think).
I'm fairly certain it ran Emacs 18. I remember that it was an overnight compile for us on our Sun 3/60's, but something (readme? configure?) claimed a couple-minute compile on a Cray.
Michael J.
Root, God, what is difference?
I looked at all of the pictures, and there were some missing parts: teletype, card reader, tape drives, and a few guys in white lab coats. Oh, and the glass box surrounding everything so the lower beings can see the magic, but have no ability to actually touch the equipment. I think an aquarium would be good, build an elevated floor with removable 2x2 scale foot panels. You would have to cut two little windows in it, one for the card decks coming in, and one for the card decks wrapped with printouts coming back out.
I think there were (are?) four of Supercomputer Centers that had Cray 1 and later Cray X-MP machines. The Pittsburgh center did a lot of work with Carnegie Mellon, esp. the Robotics Institute.
I personally did one bit of work - porting a photometrically correct ray-tracer by Dr. Robert Thibadeau in the Image Understanding Laboratory from an Apollo workstation to the Cray at PSC - this would have been in 1989, I think. The one complication we had was that the Cray floating point format was different, so our first runs were all zeros. Other than that the code compiled and ran fine on the Cray. Of course, a run that took two weeks on the Apollo ran in about 40 seconds on the Cray.
A lot, maybe all of the work done on these machines was non-spooky research so perhaps you can track some of the professors at the associated universities, such as CMU, Northern Illininois, UCSD, Berkeley, etc. Also check out the weather folks - they have been among the biggest CPU cycle-burners for a long time. I worked briefly with one weather guy at a weather research facility in Wyoming but I don't recall any details - was it U Wy?
The SCs I recall are:
I'm sure that if you dig around in the universities you'll find folks who have stuff piled on a back shelf somewhere (probably in a tape format you can't read). Also look up in the old annals of the ACM SIG on supercomputing - that will give a line on researchers who were working on the Cray.
I worked for Lockheed in the late 80's at their Weapons Systems Simulation Center. We had an original XMP and the new - too cool - YMP. The XMP ran COS - short for the Cray Operating System and the YMP ran UNICOS - a Berkley variant whose source was loaded from a dedicated workstation and then compiled (!!) at boot time to bring up the machine. Backed by 10Gb of DASD, we were able to shutdown the room and restart in any security classification within an hour.
the beginning was quite catchy - then nothing followed. Are you asking us if you may tell your story?
I'm guessing the weapons simulations are part of the software collection for Crays he's never going to get.
Building a binary-compatible Cray clone with an FPGA board: Awesome!
Putting it in a case that's...sorta roughly the same shape as a Cray-1: LAME!
Here's a MUCH better scale Cray-1 case mod housing two x86 PCs:
http://www.bit-tech.net/modding/case-mod/2010/07/28/cray-1-by-daryl-brach/7
"When information is power, privacy is freedom" - Jah-Wren Ryel
Haha! Funny - I still had several Perq workstations stashed in a storage unit until a couple of years ago. I donated them to Free Geek because I was moving across country and had no way to move them. I tried to explain to them that they were unique, collectible, etc. and should be sold as such, but I have no idea if they actually followed through.
Perq was an interesting machine, and that was an interesting time.
It's easier to be a result of the past, but more fun to be a cause of the future! http://www.spacefinancegroup.com/
BTW - Steve, if you see this, ping me.
It's easier to be a result of the past, but more fun to be a cause of the future! http://www.spacefinancegroup.com/
One of the first projects I worked on (indirectly) for the Perq was tech support for a physicist at Lawrence Livermore Labs, who was building a weapons simulation that ended up on the cover of Computer Graphics magazine. He was working on finite element analysis of anti-tank missile nose cones. The problem was that a missile nose had to stay in contact with a tank long enough for the explosion to occur. The idea was for hardened prongs on the nose cone to dig into the tank's armor enough to prevent the nose cone from sliding, and then the cone itself had to collapse at the correct rate so the main body of the missile was in contact with the armor when the shaped charge explosion went off, penetrating the armor.
The full scale simulation would involve a high resolution mesh (IIRC at least 1000x1000), and would result in a full color movie of the nose cone digging in and collapsing. But that would take a couple of days to run on the Cray. So the physicist built a small low-res wireframe version (IIRC a 50x50 mesh) to run on the Perq, so he could tune the animation the way he wanted and make sure everything was working right before committing to the big run. The Perq could pump out about a frame a minute at this low resolution.
The physicist, whose name I can not recall, was one of the very first employees at LLL - even before Edward Teller officially arrived.
As a side note, in the hallway outside his office was a four foot aluminum disk with brown oxide coating. This was the platter of the first ever one megabyte hard drive, which was on its way to the LLL museum.
It's easier to be a result of the past, but more fun to be a cause of the future! http://www.spacefinancegroup.com/