Hardware Selection for AMD64 + Linux?
MrClever asks: "After a disaster involving my cat, a pot of coffee and my workstation, I am now in the market for a new machine. I thought I'd jump on the AMD64 wagon and keep running Linux. After some initial investigation, it became clear that ATi, Promise and other manufacturers don't have 64bit drivers for Linux, which rules out most motherboards with onboard P/SATA RAID, thus limiting my available choices. I know you can run 32bit on AMD64, but if I wanted that I'd get an AthlonXP. So, what AMD64 hardware is the best supported in 64bit mode under Linux? Seems NVidia have 64bit drivers, does anyone else?"
Wait for Socket 939 boards & CPUs - the current Socket 754 has a very limited lifespan. Socket 939 processors are due VERY soon now (just saw the first leaked report on one yesterday). FYI.
Of course, this doesn't apply if you're thinking about the Opteron, with its Socket 940.
Most of the RAID on the motherboards are really software RAID that runs in a Windows driver or Linux driver. Since each slot usually shows up as a normal PATA or SATA device, one could then just use Software RAID under linux and get the same effect as the "on board" RAID under 64-bit x86.
The Promise controller on the Tyan Opteron motherboards works perfectly in both Red Hat Enterprise Linux (with Update 2), and Fedora Core 1/2 for AMD64.. That same chipset (PDC20378) is available on Athlon64/AthlonFX motherboards as well.
3ware cards work a treat in amd64 systems with one caveat - using the PATA Escalade 7500-series cards on the Tyan Thunder K8W (opteron) MB is asking for trouble. The SATA cards work fine.
Promise is junk anyhow; it's not a hardware raid controller, just a dumb ATA controller card with software RAID drivers.
Just do your own software raid in Linux or buy a real (e.g 3ware) controller.
-Isaac
I am not a lawyer, and this is not legal advice. For Entertainment Purposes Only.
Maybe you should either tell us what kind of applications that you want to run. Video drivers aren't too important for a headless box that sits in a closet.
/dev/null will fail, but cat /dev/null will not. You will find these limitations from time to time, and rarely does the platform matter.
I'm guessing that you are planning on running very large memory applications (> 2 Gig per process), otherwise 64bit support is useless. Especially since _many_ of Linux's applications still have 32bit limitations, even when compiled for 64bit platforms. I've run 64bit linux for 6 or 7 years now, and I'm still pissed that I run into 2Gb file size limits. Remember an int on 64bit linux is still 4 bytes as it is on 32bit systems, so each application has to either use size_t or long to get 64bit integers (which will work on either a 32bit or 64bit machine). Just today I had a user mail me with an error with rcp because it could not transfer a file that was 2.1Gigs. I believe 'cat' has the same limitation, unless it is done as a pipe. For example, cat over_2Gig_file >
Also, Linux has other limitations like it cannot access a block device over 1 or 2 Tb (depending on the kernel version).
I think that the 64bit hype is amusing. I'm not sure, but an amd64 system running int 64bit mode might be slower than a 32bit offering from either intel or amd. You will have to look at the numbers, but they are hard to find. All of the benchmarks for the opteron that I have seen were run on 32bit applications that were complied with the _Intel_ compiler, or sometimes gcc (and then I believe that they were in 32bit mode).
My recommendation is to 1) kill you cat (just kidding), and 2) just by a stock machine that is either 32bits or look for an integrated 64bit system for linux already, or get a really nice 64bit system (but I wouldn't put Linux on one of those).
Maybe the support database of a linux company like SuSE may be helpful.
After a disaster involving my cat, a pot of coffee and my workstation...
:)
I can just see it:
"So there I was, petting my cup of coffee and drinking my cat..."
Dual opteron just rocks
I have mod points and I am not afraid to use them
I'm using a VIA-based Gigabyte m/b and basically everything works fine (SATA, sound), but the famous AMD HALT bug is still not fixed in the latest BIOS, so the kernel is running in polling mode. It means that the CPU cannot switch to sleep mode when there's nothing to do. *Very* irritating. BIOS coders are eventually more evil than trade mark/IP lawyers.
After a disaster involving my cat, a pot of coffee and my workstation, I am now in the market for a new machine.
And a new cat.
What's more it's really fucking inconvenient and I hate being forced to use lower-quality software because of greed.
I'm sure there are more than a few upset nforce users for example. The ones who aren't upset, wait till they find a bug or find their performance isn't up to par and take their problems to the lkml. They'll find out that since their platform is a black box they can't get any support and are stuck with what they're forced to use.
I was going to buy an nforce3 dual opteron motherboard but I can't stomach having to use a bunch of proprietary drivers.
I also used to think that it was ok if just the video card had a proprietary driver. It's just one driver afterall right? well apparently the slippery slope has slipped. From now on I will refuse to use any drivers which taint the kernel.
On top of all this, I have to really question the legality of all these proprietary drivers that are popping up. I know there were some threads on the lkml about this recently.
Basically they came to the conclusion that if a driver was written for another OS and merely released for linux as an afterthought it was legal. However if it was written for linux it came under a derrivative work and was not legal.
Either way... PROPRIETARY DRIVERS SUCK
Liberty.
The performance increases of 10-20% is precisely what people got by recompiling with gcc for AMD64. This is, indeed, the reason 64-bit architectures perform better than standard x86/32 bits (Itanium has 128 GPRs for instance ...)
The Raven
is simple
MSI k8t neo FSIR2 motherboard (some issues with slow bios upgrades)
MSI Geforce FX5950ultra 256MB
Soundblaster Audigy
2 x 120GB ATA4 HDD
1 x 36GB SATA 10k drive
1 x dvd+/-rw CDrw combo
amd64 3200+
1 GB (2 x 512MB) kingston ddr333
This system runs gentoo 2004.1 64bit linux fine. SATA and PATA work fine, but there is not now nor, hopefully, will there ever be support for Software RAID as you find on motherboards (it is pointless feature creep IMHO).
Whilst I would say that ASUS appear to be on the ball with bios updates compared to MSI, my system runs fine (even manages wine using 32bit compatibility libraries and runs windows progs...).
I wholeheartedly recommend 64bit linux and would say that EVERYTHING works except high end ATI radeons (ATI couldn'f find their arsehole with two hands and a roadmap in 64bit terms) and many 802.11g cards (mostly due to the atheros binary driver crap, but support is slowly improving). Couple this with *no* support for software RAID (which is no real use anyway) and you nicely encapsulate most of the problems with 64bit linux. Sure, grub and lilo dont play well at 64 bit, so you will need a liveCD or a chrooted 32bit environment to build them (and some other apps); but 32bit apps execute fine as long as you have a set of 32bit libraries for them to play with.
Go for it, join us, we tools who double as early adopters... then you too can whine at manufacturers for their tardiness in supporting "production ready" 64bit OS'... lol
hope this helps...
err!
jak.
- Amount of performance you'll gain/lose when switching to 64 bit mode depends on the application you intend to run (for instance big gains on SSH/SSL )
- sizes of executables (programs, libs) are significantly larger in 64 bit mode
Of course in the case of AMD64 you will also gain something because of ability to use more registers, which is not the case with sparc.And one more thing - do take a look at the Solaris 64-bit Developer's Guide. They have done the migration 32->64 long time ago. Learn from them.
You can defy gravity... for a short time
Just today I had a user mail me with an error with rcp because it could not transfer a file that was 2.1Gigs.
For example, cat over_2Gig_file > /dev/null will fail
I could see this as being true "6 or 7 years" ago, but any remotely modern linux distribution will NOT have a problem with this, even on 32-bit platforms. Here is a screenshot debunking your claims for both rcp and cat.
Perhaps your problem is that you're not compiling your applications using the large file support API, which all modern distributions do for you whenever possible.
You will find these limitations from time to time, and rarely does the platform matter.
You take a look at this screenshot and try to tell me that platform doesn't matter.
Also, Linux has other limitations like it cannot access a block device over 1 or 2 Tb (depending on the kernel version).
Ironically, the one limitation that you do state correctly is also one of the limitations that only applies to 32-bit systems. It sounds like you need a 64-bit system after all, preferably a modern distribution like Fedora 2 or SuSE 9.1 that doesn't have any of the weird userspace problems that you bring up.
however, I think the ATI 9200 series meets your requirements.
The http://dri.sf.net project is the place to get the scoop on fully open source supported 3D cards.
The Internet's nature is peer to peer - 20050301_cs_profs.pdf