Experiences When Transitioning to Low-End Workstations?
gerddie asks: "Lately, we have seen a lot of companies starting to move their graphics stuff from high end to low end linux workstations (e.g. Dreamworks).
Of course one reason to do such thing is cut costs, and therefore, at our institute we are going to replace or aging SGI O2s with Linux workstations. I wonder if you have experience with such a transition - especially regarding the usability of such machines for (scientific) visualization? What is working well, and where did you encounter pitfalls?"
I'm considering upgrading my Linux workstation to SGI. Ive heard it plays doom really well.
"Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
SGI O2's run on a shared memeory idea. This format makes graphics on O2's quick because the common operation of sending data from what would be main memory to what would be texture / video memory on a PC extremely quick. Instead of having to travel through a latency timer and a PCI or AGP bus, the memory is just copied or a far jump send to the video controllers.
However... With as fast as linux boxes are now, and as old as O2's are, I think you'll see a performace increase on the Linux side. I suggest you run a non-free windowing system instead of XFree86 (you'll find there are some commercial X-es out there that benchmark dramatically faster than XFree), and do a little streamlining of your kernel before putting the boxes live.
Ta!
Our biggest problem has been that many of the cheap boxes were cheap, and at least one needs maintenence weekly.
Well, if you did what we did and transition your SGI 02 R10-12ks to 2+Ghz PCs w/ a good quality graphics card, you can expect to see 5-10x the rendering performance at 1/3rd of the price.
If you're used to SGI's extremely high quality "no bullshit" service department you might be in for a rude surprise, however. Even the very high end Dell service plans will only get you someone who goes on site for 30mins to change a component. They neither have the willingness nor the ability to diagnose symptoms, and none of them know ANYTHING about Linux.
This can cause you a lot of pain and suffering if you have difficult-to-localize hardware issues in a demanding environment. My advice would be to either keep your own inventory for severe support scenarios, or go with a system vendor that provides a much higher quality level of field service than Dell's "partners".
While Nvidia's OpenGL is pretty good, there are a few obscure corners used by our seismic applications that they don't seem to support. In particular, the facility to use colour indexed textures is not supported in their current driver. It was supported in the earlier drivers, but there's not support for the later cards and a bunch of other bugs to cope with as well. It just means 4 times the texture usage or using vertex programs for the same effect, but not all high end hardware appears to support the vertex stuff. From what we can tell ATI has their own set of problems. Sigh.
wouyld you be kind enough to name the non-free but "better and faster" windowing environments for linux, as opposed to the xfree86 "stock" dealie that comes with most distros? Thank you.
Our guys are still using powerpc boxes with aix on but weve got them a better proggy and a dual 2.0ghz zeon box to play with and i can honestly say they love it but its taking a while for them to be really happy with it...as it just dosent do some of the things they are used to.But im hopefull that we can move to it.Their current stuff is just way tooo old...
If you're applications are single threaded and require less than 2 gigabytes of addressable memory, you'll be fine with x86 and Linux. Support might be a problem, but if you want cheap, throw out that big tin (preferrably in my direction) and buy some PeeCees. In fact, you might as well just get Windows 2000 or XP. You'll find the big vendor support much better.
Well , i am in the middle of the project right now, and it was a hard way. We had simulation packages tunning on SC nodes, and that have been converted to linux. The visualization and data extraction tools are currently being migrated to linux too(from AIX, SGI and and Solaris 8). We are using UNIRAS graphics librarybya avs.
:).
:) (that one was fun)..
/*Why is there a penguin on my desktop?!*/
Problems you are going to meet are:
1) Big/Little endian issue, and this is one of the worst problems u will meet in your life
2) There are minor code changes that you are going to do, concerning memory allocation.
3) Ofcorse you will have to take care of large file support.
Well, thats what i can remeber at the moment..
The lunatic is in my head
Unix costs a lot of money, and i do mean A LOT of money, espically when it comes to expensive hardware maintaince, and also software. That does not mean that Linux's maintaince is for free, but surely there is no comparison to Unix.
But out of my personal experience, nothing is as stable as Unix, not evn Linux, (we went through hell to get the simulator running on Linux), but you get the advantage of it being very cost effective, and the stability is not as good, but is good(surely better than M$, which is cheaper than Unix by the way)
The lunatic is in my head
...wouldn't it be rather a good idea to try out a couple of the proposed new workstations in a, you know, pilot programme? For the cost of a couple of boxes, a couple of licenses of the software you're interested in, and the hours to set it all up, you'll be able to set up these PCs in an area where some of your people can try running their visualizations on them and see how it works out.
From the post:
I wonder if you have experience with such a transition - especially regarding the usability of such machines for (scientific) visualization?
Not to take anything away from the posters (many of whom are making comments from obvious experience -- e.g. the comments about the different architectures (big-endian vs. little-endian), but usability is, after all, in the eye of the beholder.
One other point (and please note I am not familiar with much outside of FEA type packages) is the software you're using -- does it have a Linux platform support, or are you contemplating making an application switch as well? If so, be prepared for some resistance from the users who will be used to how things work in their big and complex package, and will not want to learn a different big and complex package.
One of the best original uses for O2 was graphics with a lot of textures. As O2 uses a shared bank of ram for everything, a texture could be nearly any size. Some crazy people even wrote demos that would fly over 800MB+ texture maps. The downside of O2 is the rather limited geometry performance. This is why many of the "Killer Apps" for O2 are in the video industry... such as controlling the weather graphics for The Weather Channel and for local TV stations. Not much geometry there, it's mostly textures and makes good use of the O2's built in analog video ports (or optional digital video card).
Another downside of O2 is its CPU performance. The machine was originally designed for the R5000 processor and as such, the R10K and R12K processors were basiclly hacked in. They don't even use the IRIX64 kernel that an Octane does! Plus performance is much lower. We've seen cases where a CPU benchmark on a 300 MHz R12K O2 is less than 40% of the score on a similar Octane. So they are clearly totally different machines with totally different uses.
I think you'll find modern Linux PCs to much much faster than your O2s, especially for CPU performance. Graphics should be much faster too, unless you had been using some very specific O2 features, but even then you'd have to have been using some very large textures to see a difference.
Keep in mind that the SGI O2 was first sold in 1996. Yep, 7 years ago. You're more than due for an upgrade!
The O2 is about 7 years old. While it did have some specific uses and advantages (mainly video and high texture usage), it was not quite a powerhouse when it was originally announced. O2 replaced the low end Indy... both were 32-bit machines with significant memory limits. (Indy was limited to 256 MB RAM, O2 was limited to 1 GB RAM).
It was the R10K Indigo2 and its replacement, the Octane that were the 64-bit desktop beasts back in their days.
You'll find the Linux PC to be much faster. The O2 had its advantages back in its day, but is has been 7 years since the introduction of its architecture and gfx chips. I'd be willing to bet that your replacement workstation will have a faster CPU, faster memory, faster graphics, and a faster hard drive. A lot of new tech pops up in 7 years.
Absolutely, positively have multiple vendors come in with their graphics workstations and then proceed to evaluate how well your critical applications can run. Expect this process to take months.
Finally, I'm not sure how large and mature your present environment is, but if you're talking about more than a few seats and two or three apps, expect a transition that takes a long time. Let people run their O2's next to their Linux boxes. Eventually, if you give the Linux systems proper care and feeding, you'll see dust start to collect on the O2's. Then, and only then, have you successfully completed your transition.
SGI, Sun, HP, IBM all basically want to sell you more or less proprietary hardware with expensive support contracts.
I can almost buy, each and every year, a new fast Dell machine with a fast video card for what we paid in support for our old unix workstations.
We go with this general platform:
1. One or two steps below the fastest cpu
2. One step below the fastest video card
3. Default values for all of the other parts including IDE hard disks
4. No monitor - we buy a new one when the old ones break down
General cost, $500-$650 per machine, no yearly support costs, no ongoing software licensing from SGI/SUN either
We then recycle the old machines for use for regular office workers.
Sorry, I had to laugh.
You are moving from O2s to PCs with Linux, and you are worried because the new machines won't be able to handle the visualization tasks? Worry about what to do with the lack of ethernal coffee pauses while you wait for programs to load or thing to compile, but don't worry about the PCs not handling the task.
Problems you are going to find:
* No 4Dwm replacement, your users are going to have to learn another window manager, sorry. (yes, I know there's a 4Dwm for non-Irix but the thing is not the read 4Dwm)
* Linux on Intel is a 32 bit OS. You might find that you have to go thru your code checking for stuff assuming it's running in 64 bits. Large files might be a problem (shouldn't, but can)
* Compared to O2s, PCs are too fast. You might find some of your programs weren't really expecting that.
* Visuals are limited to 8 bits (not that it matters, unless you were attached to those funny 4 bit visuals on the O2s)
* No good overlay support.
* 3D textures could be faster. It's not the kind of stuff games use.
* You can't just hit the power button on PCs an hope everything is ok.
* Even if you compare PCs to Octanes, Octane 2s or Fuels, the PCs win.
* Some OpenGL extensions are not available (think those funky SGI, SGIS, SGIX ones, and ARB_multitexture is just different than SGIS_multitexture)
* I had something else to write but forgot it.
HTH,
Still ROTFLing.
For 99% of the usage the Linux emulation of pthreads is fine. We also took advantage of the recursive mutexes, these are a total pain under pure POSIX threads.
Why not invest in a shiny new 64-bit RISC UNIX workstation like the Sun Blade 2000? Despite the deceptively low clock frequency, the strong floating-point performance, top-quality operating system, huge memory and I/O bandwidth and serious graphics hardware make this a kick-ass machine. You'd also have a lot less porting headaches moving across to another 64-bit UNIX machine than down to a 32-bit one.
Hey man, he's Indian (not sure if he is Big Indian or Little Indian, but that doesn't matter right now.) Cut the nigga some slack.
Glonoinha the MebiByte Slayer
What about AMD Opteron? That's a 64-bit workstation-like architecture at PC-like prices. You can run 64-bit SuSE, Mandrake or Red Hat on it, and avoid the pitfalls of downporting from 64-bits to 32-bits.
Stick Men