Crusoe As Server CPU
rxmd writes "Heise has an article on Transmeta's Crusoe processor being used as a x86-compatible server CPU by companies such as rebel.com and RLX (read their press release on the project), supporting Linux as well as other "established operating systems". Basically, it's about the Crusoe's lower power consumption and temperatures enabling server manufacturers to put more processing power into the same amount of space than with Intel or AMD cpus. Interesting that a CPU designed for mobile applications should find its way into the server market."
If there were cheap PPC motherboards, I'm sure a whole lot more people would run Linux on PPC just out of this being an interesting alternative to Intel and AMD.
But the fact is, there aren't cheap PPC motherboards. You have a choice of buying pretty pricey hardware from Apple, or buying ludicrously pricey hardware from IBM or Motorola.
Selling cheap motherboards isn't a primary business for any of these companies; what's needed is to attract companies like ASUS, GigaByte, Shuttle, ...
And they will only seek to sell cheap motherboards if they are quite certain that they can amortize development costs across gazillions of sales.
That only happens if there are VARs and wholesalers prepared to purchase gazillions of cheap PPC motherboards and sell them pretty cheaply. Which requires having a bunch of system vendors.
I seem to remember there being some; Apple basically drove them out of business, thus leaving only the high priced vendors of PPC systems to drive the market for PPC-related hardware.
Note that I never said a word about electricity in any of the above; the only time when vendors start trying to sell people on "power efficient" is when they haven't any more compelling argument to make. I knew Corel Computers was in trouble when they spent much of their marketing material selling the fact that their machines were cheaper to run due to low power consumption.
If you're not part of the solution, you're part of the precipitate.
> Seems to me that it'd be pretty cool to write to the native Crusoe architecture rather than going through the x86 ``emulation''. Does anyone know if it's even possible to bypass the emulation at all, and write native machine code
Just about every Crusoe posts comes standard with one or two of these questions. Actually, I don't know the answer, but I expect it is *not* possible to write to the "native" ISA of the Crusoe chips. In so doing, you would be circumventing important architectural features of the chip, which operate in their ultra-low-level ISA emulation software.
But most importantly, even if you could, they do not *want* you to. Their code-morphing software also performs some optimizations, which would be thrown out the window if you went "native". More importantly, though, native could would be irrevocably tied to *that implementation* of the Crusoe. Transmeta is under no obligation to build the next Crusoe with the same ISA, and probably won't. Since they are emulating another ISA, the physical architecture is only seen by their software, thus they can tweak the architecture as much as they like between revs without having to worry about breaking binary compatibility. As any design engineer knows, this is a Thing of Beauty, and a luxury no other company is allowed. If people started programming native, they would lose that luxury.
So, while writing straight to the Crusoe silicon (if possible) may be fun as a hack, it would not result in maintainable software. Moreover, it is in Transmeta's best interests to discourage such behavior
--Lenny
20 2u machines in a rack generate a large amount of heat, and if all they are doing is acting as web frontends to a backend machine that is doing the heavy database lifting I could see the saving in machine room cooling and UPS power to be significant.
In a dense pack server farm, a dense rack or CoLo cage the enemy is heat. The heat pumps grow much faster than server capacity the denser you pack them. So anything you can do to reduce heat is a good thing assuming of course that under typical load a Crusoe is actually cooler. That is, if it's never idle is it cooler than Intel machines?
The ratio for average server performance is more than 1:2 not 1:12. So you logic is flawed. Transmeta is not that slow. Tried it. It is about as fast as PIII at the same frequency on integer math and this is what matters for a server. Also, for real server operations quite often the bottleneck is the IO, not the CPU anyway.
The reason why people use PIII and not transmeta or AMD (which also has very good power saving under UNIXes) is the fact that there are no server boards available. For example try to find a mainboard for AMD with console redirection and enjoy the nightmare. At the same time all high end Intel and ServerWorks boards support it.
Baker's Law: Misery no longer loves company. Nowadays it insists on it
http://www.sigsegv.cx/
This does make sense, but there is no one selling to this market. Apple is still the only company that sells affordable PPC boxes/motherboards. Until this changes, PPC isn't going to live up to its potential, and no one is marketing PPC boxes as servers.
Apple can't do it, because their OS (up through MacOS 9) pretty much sucks as a server. Sure, you can load Linux or NetBSD on it, but Apple has a lot of ego invested in MacOS, and to them, Mac+MacOS is a single product. Their marketing doesn't include the concept of selling a Mac just to have another OS get installed over MacOS.
(Aside: maybe that's a good thing. I remember my shock and disappointment when I found out that IBM was selling computers with Win95 instead of OS/2 Warp. Shock and disappointment aren't emotions that you want potential customers to feel.)
What this means is that it may actually make a lot of sense for a user to buy a Mac for use as a server, and put some Unix on it. But they aren't going to get the idea to do this, from Apple's salesmen.
MacOS X may change the situation, since it should be good for servers. So Apple probably will start marketing their boxes as servers. But that's in the future; MacOS X isn't at release yet. When MacOS X comes out, I think the personal computer world is going to become more interesting.
---
As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
Mac OS X is going to be the long-term key to this plan, but Linux/PPC isn't a bad place to start from. With Larry Ellison sitting on Apple's board, I would expect Oracle to be running on OS X within a year. That'll give you Oracle, Apache, and JDK 1.3 all on one box, which uses a lot less power.
This should be a no-brainer, since the power problem in Silicon Valley is going to get worse before it gets better; winter is the OFF season for power, and we're running out (yes, I know there are lots of power plants offline now, but the same principle applies)...
-jon
Remember Amalek.
I've been waiting for Apple to start running ads in California trumpeting how much less power Macs use, compared to PCs. This might be a good place for Apple to start; G3/G4 rack-mount, anyone?
-jon
Remember Amalek.
I don't know about this, I guess it could just be me, but I dont think I could ever see a Crusoe inside a server. Now if they were doing some massively parallel stuff like 8 of them all in one box it might be feasible, but the whole reasoning behind it seems a bit shaky. If you run the article through Babelfish and actually read it, you'll see that that's what they are talking about. In the same space you can fit 42 1U rack-mount dual-Pentium III boards (with requisite cooling) for a total of 84 processors, RLX will fit 750 Crusoe processors. 9X the CPUs with less power consumption and heat. Not bad in my opinion.
If it's for-profit but free, you're not the customer -- you're the product (e.g., the Slashdot Beta's "audience").
Yes, it would be cool. It would also be impractical. The native Crusoe ISA is strikingly similar to "horizontal" microcode[1] from a long-ago era. Even I came on the scene too late to hack that kind of microcode, but I was close enough to know that it had a couple of interesting characteristics:
Having said all that, I still think it would be cool.
[1] For those unfamiliar with such ancient terminology, there were two trends in microcode. "Horizontal" microcode was characterized by fewer, longer lines on a program listing compared to "vertical" microcode. RISC and VLIW assembler are strongly reminiscent of vertical and horizontal microcode respectively. Of course, microcode didn't quite have the same "view" of things like registers or exceptions, and all of that OOI/OOC/renaming kinda stuff just didn't apply at all, but the similarities are still there.
Slashdot - News for Herds. Stuff that Splatters.
RocketLogix and FiberCycle are looking at Crusoe in the same way
I'm not posting links... you should be able to figure them out.
Actually from things that I can't really disclose... The Crusoe is exceptionally fast in it's native instruction set. If you actually run on native hardware it's FPU is supposed to be extremely fast. The catch....
Is that Transmeta does not gaarantee that the instruction set will ever be the same between different revisions ot models. They want to support x86 apps and OSes.
The Crusoe is a strange beast and benchmarks very well against clock equivalent Intel Processors. Actually integer performance is through the roof, sometimes doubled.
This interger performance is exactly what servers need. You think that Apache is doing some heavy fp math? No.
Floating point is great for games and scientists. but it's not always the most important thing to look at... the UltraSPARCII is a good example of FPU not being everything.
True stoneage thinking. Me not know how to use computer. Me know how to use hammer. Me use computer as hammer. See! 'pooter is useful!
Yes, you can write native machine code for one particular Crusoe chip. After all, the code morphing layer is written in native code. The next Crusoe chip that comes along won't be able run your code, because the internals will have changed. Transmeta don't want to be in the position of Intel, having to build backward compatability into their chips. They won't do it. So in six months you'll have to compile your program for the next Crusoe... and the next... and the next... and you'll have to support users using all those versions, so you'll need to keep a machine with each version in house...
True stone-age thinking.
I'm old enough to remember when discussions on Slashdot were well informed.
at least someone is using it.
Performance at doing what though. If the power consumption is very low and you want a farm of web servers, you can embed 8 of them in one 2U rack box, which will have much more performance. The whole point here is that not everything is CPU limited AND you may get better bang per unit volume with lots of small Crusoes. I don't know about better bang for your buck as that depends on what kind of performance you need. If you want a box to run a CPU intensive process that needs scalibility in the CPU realm (i.e. SMP) and isn't inherently distributed, then obviously 5 or 6 or 8 of these Transmeta boxes are clearly at a disadvantage to one powerful SMP PIII box. The right tool for the right task.
Also, you are completely ignoring that fact the relationship between power consumption and processing capability is not at all linear. 8 Crusoes may draw the same current as one Athlon or one PIII, but for an inherently parallelizable or distributed application may be able to do 2-3 times as much work (all together) as that one Athlon. For other applications that are less amenable to distribution/parallelization, they may do significantly LESS work than 1 Athlon or 1 PIII. It isn't a one-size-fits-all problem and there is no absolute metric of "Processing Power" for all applications, nor is "Processing Power" the only relevant factor for all applications.
Now if we could just get some of those California web hosting companies to adopt these en-mass.... I could turn on the lights in my office again... :-)
Temkin
NetBSD awaits...
Fuck 'im up, Tim! His views are invalid! -Pirate Corp$
I'm not cutting down the Crusoe here. I think it is quite an impressive chip and would like a laptop with a Crusoe inside. But I wouldn't get it for my desktop and then try and overclock it.
Oceania has always been at war with Eastasia.
My previous post contains three separate indications that the comment is ironic. A US$5 Paypal payment will go to the first Slashdotter to describe each one. Describe all three before anybody else describes any, and I'll kick in an extra $5, for a total prize of $20. Myself to be sole judge, etc. etc.
__________________
Look at it this way: Would you rather have a dozen Crusoe boxes humming away in your server closet, or one P3 workstation doing the same amount of work. Their low power/low heat argument is moot because in order to obtain the kinds of processing power you'd need to run a server, you'd need to have several times the number of Crusoe's as you would need Alphas or P3's. Not only would the power consumption/heat generated be similar, but I would imagine a 100 Crusoe machine would take quite a bit more space than an 8 way or 16 way P3 machine.
-atrowe: Card-carrying Mensa member. I have no toleranse for stupidity.
A number of reasons come to mind:
/. effect - if we all hit these servers asking for the same thing, the code morphing chip will get very good on the third, fourth, fifth request. So in actual practice, a Crusoe server would handle /. effect very well, not to mention many brute force attacks, as it optimizes itself for redundancy. Extra added bonus for the superbowl effect, for those remaining .com advertisers!
1. California has too few power plants - anything to save energy is good.
2. Most servers are redundant ones, hot spares, etc. These would be great with the low-power consumption, especially as the disk access is very low on such boxen until there is a demand spike.
3. Most servers do a lot of the same things over and over and over - this may turn out to be where the highest return on investment (ROI) is for code morphing chips. That plus their ability to ramp up on demand.
4. Think about the
5. Especially useful when reading Jon Katz articles. Lots of excess verbiage, repetition, and waste of space - maybe the Crusoe chip could just go to sleep and save power whenever someone made a mistake and tried to read one of those!
--- Will in Seattle - What are you doing to fight the War?
It all depends on the application, but most servers "require"
1 - small code (always the same app running)
2 - mucho data, not so mucho processing.
3 - mucho I/O
For a good design server, a kick-ass bus and lots of CPUs is way more important than having the latest 5.3 zillion Hz processor. The speed and width of the bus/switch fabric sets the upper limit on how much data you can move around. Having a lot of processors is good so you can max out your bandwidth, some processors using the bus while others stall on I/O or locks. In a data server, a CPU spends most of its time doing strictly nothing but wait for the rest of the world.
There are some applications that would prove me wrong : web server with very complex / sophisticated / bloated dynamic pages may be, scientific computing definitely. But the above is more or less the rule of thumb when looking at a data server.
My $0.02