My main concern with this release is the ongoing, phantom ext4 (and sometimes 3?) corruption problem. Depending on which reports you read, it affects 64-bit installations specifically, which is what I use.
As much as the software, I want to ensure that there's plenty of community documentation and collective experience compiled before I switch. My System76 laptop here is my bread and butter; I don't want to find myself pathfinding on a new problem when I need to get things done, I want someone to have already charted a solution.
Also its your RAM + Videocard Memory that is your memory, so while you might have say 4 gig, and it would seem to show up on your computer, its including your video card memory.
* You need to compute extremely large numbers. You'll get big performance boosts here.
* You need more then ~3.5 G ram. In which case you actually have to buy AT LEAST 8G to see a positive impact. Even this is not a hard requirement, as there are work arounds in 32-bit. But 64-bit is an absolute must if an individual process needs that much ram.
note: I see I'm voted down, and maybe I'm a little harsh in my comment, but can anyone add any other reasons to go to 64 bit? I've read a ton over the years and those are the only two I could find. Maybe I should add "because 64 is bigger then 32 and I can tell ppl my OS is 64 bit"
edit: Double is a great exaggeration, but not as much as the replies indicated. I moved from a 64-bit slicehost with 512M to a 32-bit linode with 320M and have LESS memory woes. The libraries really are almost twice as big. I speak from experience and not from theory.
1. It can provide performance boost if you take advantage of that 64-bit calculation (two 32-bit calculations) is done in one clock-cycle, you can actually achieve 100% speed up.
2. Use more than 4G memory is not a big deal in scientific computing, and let's face it, more memory is better than read from disk.
3. The argument about the double memory consumption is plain wrong. All program still use int as the main type, which only 32-bit long. Only pointers takes 64-bit long, but you don't save much pointers in your memory (what's the point of keep 4G pointers in memory anyway?). Thus, the memory consumption is little larger, but definitely manageable.
4. (This point may be wrong, please correct me) double precision is common for calculation, and it takes exact 64-bit long, which makes it more suitable for 64-bit CPU.
ints remain the same size, but longs and pointers are double the size. 64-bit libraries may be bigger, but there's no reason they would double in size. In general, a 64-bit system uses more RAM, but not double.
I'm not sure if 1.25-1.5x would be accurate as a rule of thumb, but 2x is almost certainly too high. (It will depend on the data structures etc. involved.)
- IA32 is register starved ISA, AMD64 is not. It has doubled the amount of general registers.
- AMD64 doesn't have to support the x87 FPU baggage. As a result, it is simpler to deal with fp math.
I was asking because I choose to install the 32bit version ... 64 bit packages are more unstable being less popular.
As the other commenter mentioned, there are the CPU optimizations to consider, but what decided my final transition (I've tried it out a few times over the past few years) was when System76 moved to shipping their systems with the 64-bit distro installed. I want to maximize their ability to support me, so when I did a fresh install on a new drive I opted for 64-bit as well.
Most of the problems of compatibility with 32-bit binaries have been trivialized or are routed around easily enough these days. Though 64-bit Linux was never as much hassle as x64 Windows. ;^)
Of course the 32-bit JVM also has a 2.5 gig or so address space limit that makes no goddamn sense whatsoever, so if you want to process more than 2 gigs of data for any reason you have to either do it offline or you have to buy twice as much memory and do it on a 64 bit VM.
As you can see, x86-64 isn't just about memory size.
It's not a ton by any measure...
The sooner we can ditch x86 (and that includes amd64), the better.
What AMD did was to extend the x86 ISA with a handful extra registers and double the size of all of them. This allowed x86 to survive until these days, slowed down the migration towards 64-bit computing and confined much better architectures to specific niches.
No, I will not thank AMD for that.