Ubuntu 12.04 Still Trying For 64-bit By Default
Phoronix: Ubuntu 12.04 Still Trying For 64-bit By Default
Back at the last UDS Orlando summit I mentioned that Canonical was looking at finally recomending the 64-bit version of Ubuntu Linux by default for new installs rather than 32-bit. This issue is again being discussed at the last minute for the Ubuntu 12.04 LTS "Precise Pangolin" release due out next week...
Imo x32 is welcome even if released in 2 years.
For the last 5-7 years apps don't use significantly more RAM. In fact win7 is more lightweight than vista, and C11 & C++11 make for a solid guarantee for native (non-interpreted, hence lower memory) solutions to stay common for a long time. Even today's AAA games are fine with 2GB (they care a lot more about GPU ram). So X32 is likely to be a good fit for like 15 years until/if a new hw paradigm comes about. I've never used any desktop 32 bit (or even 64 bit) app that would require over 4GB, not even close, those which did did so because of memory leaks and/or bad programmers.
Last edited by cl333r; 04-17-2012 at 07:08 AM.
Indeed. Smaller footprint is always going to make a difference: the code is able to fit inside the cpu cache, and leaves a lot more cache space that can be used for data.
Originally Posted by cl333r
But I would say that in my experience 64-bit Ubuntu/Kubuntu with 2gb ram is a bit painful. If you have an SSD for swap, it works great, but with an hard disk, especially a slow laptop one, you do notice the swapping and general unresponsiveness.
For 32-bit even 1gb is more than enough for most tasks and works great.
(Edit: 2gb sucks especially if you have shared memory with the GPU, which is true on a lot of low-end systems)
Also afaik X32 apps can access 4GB each, which for a 32 bit app is plenty.
64 bit Ubuntu does come close to exceeding 2GB when heavyweight apps are running but it's largely because of Java, bugs and leaks, e.g. right now compiz uses 151MB on my computer cause it's a known issue with some known setups using the nvidia blob, otherwise compiz uses like 30-50MB (big difference). Firefox - same issue, when watching too much youtube it goes beyond 2GB (or even 5GB) cause of memory leaks in the flash plugin. Java is abnormaly memory hungry on 64 bit.
Also, solutions like KDE/Gnome try to be everything for anyone, and as multi-threading, unicode etc is adopted upstream (in C/C++) they can cut the fat from their libs. The KDE lighthouse project is a start, more to come.
Also, gcc 4.7 has been optimized (read "fixed") to use like 250% less ram when doing LTO (FF reported to require now 3GB instead of 8 to do the LTO), which is one more example of bad design/code being fixed lately.
Last edited by cl333r; 04-17-2012 at 07:55 AM.
I would not do it for an LTS release; that is not the release to introduce new things (like the pulseaudio disaster in Hardy/8.04). I'm not saying 64-bit isn't well-used/tested (I've been running 64-bit for 6 years now), but rather that I expect some level of fallout from the new multiarch scheme and also from people who don't know the difference between 32/64-bit until they go to run a legacy app and it doesn't work.
There are still distros which use 32 bits by default? When was the last 32-bit only x86 chip released?
It's true that non-demanding desktop users can get by with 32-bits, especially with tricks allowing access to more than 4GB in 32-bit mode, but this still seems strange to me. For me, 32-bits is a no-no, but then again, I'm not Ubuntu's target audience.
A few years ago I had a job in 3D architecture visualization and I remember trying to render a scene at something like 8000x2500px, anti-aliasing, global illumination, computed geometry and lots of detail and that was a 5.3GB of RAM render. It was the most intensive one I did and it was a swapping hell because the computer only had 4GB of ram... Also, having lots of open drawings on Inkscape each with lots of lines and effects also uses a substantial amount of RAM. There are many uses for large amounts of RAM.
Originally Posted by cl333r
A friend of mine is doing heavy computer vision stuff with Matlab. Recently he ran out of memory on 32-bit Windows. Luckily for him, the /3GB boot option gave enough virtual memory to complete his processing but bigger images would require even more memory. Running the 32-bit version under 64-bit OS (Windows or Linux) would give him 4GB of virtual address space. So one could say that switching to 64-bit OS protects your investment because you won't have to buy a new 64-bit version of the application. Of course, on Windows you have to check if the application supports more than 2GB virtual address space - it's a flag in the PE file format, but 32-bit Linux apps should be fine because the default memory split has been 3G/1G for quite some time, and consequently no one has been stupid enough to use the most significant bit of the pointers for flags.
Originally Posted by devius