Thursday, August 12, 2010

32 bit vs 64 bit Linux - Which to Choose?

Do I want 32 bit or 64 bit?

This is a question I have fielded many times, it is one most new Linux users ask before they even download their first Linux ISO. There is a short answer and a long answer to this question. The short answer:

You want 32bit.

Ok - now for the long answer. There are several things to consider when deciding if you want to use 32 bit or 64 bit on your system.

Hardware Support:
Does your processor support the 64 bit architecture? Most all modern processors do, but this is something you should double check if you are unsure about your particular chip.

Applications:
While it is true that most all open source applications have both 32 bit and 64 bit installers, more than a few closed source applications do not. Adobe Flash is one of the most commonly used of these and another that I personally have had issues with is SMART Tech Software I use for school. Sure there are work arounds for some of these, but they are far from perfect.

RAM:
The main reason for choosing a 64 bit operating system on a desktop system is so you are able to utilize more than 4gb of RAM. Well, thanks to PAE your favorite Linux distribution can recognize up to 64gb of RAM with a 32 bit installation - which should be more than enough for most desktop users.

Speed:
Unless you are compiling software or encoding audio/video often there really is very little speed difference between the two operating architectures. Meaning that most people who just use the computer for everyday tasks such as webrowsing will not notice a difference between the two.

For the average desktop user the applications issue, especially with flash - something most of us use everyday, is the driving factor to use a 32 bit version of your Linux distro of choice. If you are using your system as more of a work station (compiling and decoding) then maybe the 64 bit version is a better selection for your needs.

Are there any other things you consider when making the choice between downloading a 32 bit or 64 bit version of a distro?

~Jeff Hoogland

88 comments:

  1. Yikes! Enabling PAE incurs severe speed penalties. You should definitely not be recommending that. Plain and simple: If you want to use more than 4 gig of RAM, then go 64-bit. But you also forgot another important point. The 64-bit CPUs have twice as many hardware registers as the 32-bit CPUs. But if you run a 32-bit Linux and 32-bit apps, then all those extra registers go to waste. (Half your CPU isn't being used). They are used only by 64-bit software. That accounts for why the 64-bit versions run faster than 32-bit versions (on a 64-bit CPU). And the packages in your 64-bit distro are compiled for 64-bit (unless perhaps they're closed source).

    My bottom line is: If you have a 64-bit CPU and 4 gig or more of RAM, run a 64-bit Linux. I do. (64-bit Debian) No problems here.

    ReplyDelete
  2. Adobe do not even have a proper 64 flash on their site, and running the 32bit verson with pluginwrapper is a kludge.

    Canon only supplies 32 bit drivers for their printers and multifunctions, you can force architecture and ram the drivers in, but when I tried this the scanner did not work.

    I had used 64bit Debian, Sidux and Ubuntu for years until a few months ago when I had a hardware failure. I installed Ubuntu 10.04 32bit now using a 2.6.35 kernel, PAE and 4gb ram and it has been plain sailing ever since. Everything just works, I can scan across my network from my Canon (and print) and my Media Player, PC and NAS now all play together nicely with Samba shares. Google Chrome and flash work nicely as does java.

    32v64 bit depends a lot on you hardware and the primary use of your computer. I will be sticking to Ubuntu 32 bit for the foreseeable future. If you have an HP printer and do not use flash much then by all means dive into 64 bit.

    ReplyDelete
  3. Can you cite a source for PAE slowing down a system? My 3D benchmarks are no different on Ubuntu PAE kernel vs non-PAE kernel.

    Also, 64 bit Ubuntu to 32 bit Ubuntu I see zero difference application performance wise.

    ReplyDelete
  4. If you use virtualization on your machine the choice is in my opinion always 64bit.

    Then again my system has 12G memory and Core Quad cpu with hyperthreading, so no point in going 32bit. :)

    ReplyDelete
  5. Reading your long answer to the question explains that you are actually answering the question "32 bit vs 64 bit Linux ON A DESKTOP - Which to Choose?".
    For linux servers always choose 64 bit, of course.

    ReplyDelete
  6. RAM is cheap and a 64bit system makes it possible to use over 4GB of it. Even with plain 4GB and a 64bit OS you _have_ the choice to run a 32bit OS via virtualbox.

    How old and matured is AMD64? And you're still arguing what system to use? One big point for GNU/Linux is, that you can use 64bit systems whenever you like without any back draw.

    I use 64 bit debian and ubuntu when the hardware supports it. Never thought a second to use 32bit. Ridiculous, 32bit system on 64bit hardware.

    ReplyDelete
  7. in my experience, PAE gives near-zero performance penalty. in fact, i think Fedora doesn't even ship a non-PAE kernel anymore.

    also, 64-bit applications use twice as much ram as their 32-bit counterpart would. that can be a noticable performance penalty, considering that you'll run out of memory twice as fast.

    i fail to see why 64-bit on a desktop is useful. i stepped away because there's always some obscure app that doesn't compile to 64-bit properly and you have to have a lot of libs in both 64 and 32 bit (unless you have not a single 32 bit app, which i can't really imagine on a desktop)

    ReplyDelete
  8. I use 64bit, have for a while now, I haven't had any major issues with flash or anything else, installing adobe air is a bit of a chore, but it is easy enough.
    I have noticed a difference in image processing and manipulation between 32 and 64 bit installs, the same goes for video related tasks, and my virtual machine runs better on 64bit than it ever did on 32bit, (that includes PAE)

    ReplyDelete
  9. PAE's big performance impact is a huge lie.

    ReplyDelete
  10. PAE vs vanilla 32-bit kernel speed is negligible, but 64-bit kernel vs 32-bit (with or without PAE) is IMMENSE!

    Phoronix benchmarks comparing the 3:
    http://www.phoronix.com/scan.php?page=article&item=ubuntu_32_pae&num=1

    64-bit kernel always wins.. So even if you have less than 4GB RAM I'd still recommend 64-bit, unless you require some specific software which isn't supported in any way, although that's VERY rare for the average user.

    ReplyDelete
  11. You can see a Phoronix Dec 2009 study that says 64bit is much better than 32bit in certain areas here:http://www.phoronix.com/scan.php?page=article&item=ubuntu_32_pae&num=1. I use 64bit Ubuntu 10.04 and have flash running without problems "out of the box".

    Mike

    ReplyDelete
  12. this benchmark from phoronix offers synthetic benches only, which are bound to be easily parallelisable(?).

    that being said, of course you'll notice speed improvements for image and audio editing, database handling and other programs that rely on well established algorithms.

    but you won't notice speed improvements in webbrowsing, text editing and "normal user" tasks.

    also, doesn't Ubuntu 64-bit have a 32-bit firefox? i'm sure they used to (8.10 was the last i tried) that would explain why flash is working without glitches. and hardly anybody uses 64-bit wine (as it doesn't do much yet)

    but now you're missing most of the benefits of 64-bit (unless you're heavy on gimp/audacity) and you have some of the negatives (double memory consumption, lib32/lib64 hard drive usage)


    if you want to use 64-bit yourself, go ahead, i do on my audio-only pc.

    but i would never recommend it to anyone who just wants a desktop system.

    ReplyDelete
  13. Until everything gets ironed out with 64-bit stuff, I have no intention at all of going 64-bit. Until then, I'll keep my 32-bit architecture, thank you very much. After all, since many websites use Flash, and Flash doesn't do 64-bit yet, then what's the point? Right now, as far as my computer is concerned, I'm very happy with it the way it is.

    Besides, my favorite distribution, PC/OS, which is one of VERY few Linux distributions that works with my wireless card out-of-the-box, doesn't even come in a 64-bit version. Therefore, I'll likely be one of the last people to ever upgrade to a 64-bit architecture.

    ReplyDelete
  14. I've been running Ubuntu in 64 bit for a few years now and have had no problems to speak of. I'm not sure why people claim that I can't use flash; it works flawlessly (if you can call flash flawless).

    ReplyDelete
  15. You really don't want to run a 32bit kernel on a machine with more than a couple of gigs of memory due to lowmem starvation.

    ReplyDelete
  16. I have to say, I don't know what people do with more than 4GB RAM on a "desktop" system. Maybe I just don't have enough Konqueror and FireFox tabs open at once...

    ReplyDelete
  17. Article best not written. Poor advice.

    ReplyDelete
  18. I have been running 64bit openSUSE for couple years, haven't had a problem, works great. Don't know what the big issue is with flash, installed it from the repo, no idea what version it is and it works just fine. I really don't see any reason NOT to run 64bit if your processor supports it, like most do nowadays.

    ReplyDelete
  19. Really? For it being poor advice as many seem to agree with me as disagree... To each their own - choice is a wonderful part about the FOSS world. For people who are new to Linux they should know, I feel 32 bit is the best choice for desktop systems.

    ReplyDelete
  20. The answer is it depends! If you are going to doing any high performance computing then 64 bit wins! About two years ago we delivered a system that used a lot of signal processing algorithms, on the same hardware the 64 bit version is 40 % faster.

    ReplyDelete
  21. Great article! Great advice!

    I am a desktop linux user, and I have tried both Mandriva 64 bit and OpenSuse 64 bit. Both caused problems and instability. Especially openSuse where it was a nightmare trying to add repos to add 32 bit software with a compatibility layer (mostly multimedia stuff that had no 64 bit versions).

    Now I use PCLOS and it FLIES in speed. I have not installed the PAE kernel since it is fast enough as it is. I also tried Mandriva 32 bit, sabayon, mepis, and many other 32 bit distros without any hitch at all, other than the particular distro's limitations that were unrelated to 32/64 architechture.

    Perhaps if I was a linux guru running servers and multiple virtual machines, a 64 bit OS would be important, but the reality is, as this article points out well, for an average joe desktop linux user there is NO compelling reason to use a 64 bit OS - UNTIL there is proven stability through the whole stack of software INCLUDING multimedia and other stuff.

    The negative commenters here have to get their heads out of their ar$ho!e$ and wake up to the average joe desktop user's needs. I don't want to be screwing with this and that every time I upgrade firefox just to get flash content showing. (Maybe a bad, bad example, but just trying to illustrate a point - 64 bit is more fidgety).

    ReplyDelete
  22. QUOTE: The answer is it depends! If you are going to doing any high performance computing then 64 bit wins! About two years ago we delivered a system that used a lot of signal processing algorithms, on the same hardware the 64 bit version is 40 % faster. ENDQUOTE

    EXACTLY THE POINT!! The writer of the article starts by saying "new linux users". You and your needs don't seem to be that of a "new linux user". Also, the article author states that "compiling" and "audio/video" needs will be faster with 64 bit, and for most users this functionality is not needed, hence, the non-problematic nature of the 32 bit architecture is more suitable for new linux users with regular computing habits.

    ReplyDelete
  23. Guys, The end user needs to push for 64 bit support. Developers get in the habit way too often to write for 32 bit exclusively, or do a poor conversion to 64 bit later. They do this because most people use 32 bit. This cycle will never break until you all refuse to load a 32 bit OS. You all are dragging this battle out longer than it needs to be. Grow up, move on, let the past be the past.

    ReplyDelete
    Replies
    1. look at distro watch very few 32 bit OS'S not all of us live in the US were 64 bit is common

      Delete
  24. Quote: Guys, The end user needs to push for 64 bit support. Developers get in the habit way too often to write for 32 bit exclusively, or do a poor conversion to 64 bit later. Endquote

    I don't give 2 turds if my software is 32 or 64 bit. I do, however, care if it works.

    If it ain't broke, don't fix it. 32 bit works. Final. Period. Users with needs that are better served by 64 bit should/can/ and will know how to use it.

    Present computers have so much bloody power it is ridiculous, even running 32 bit. So where is my incentive to contact so many hundreds of developers and say, "Oh please oh please, can you make your software 64 bit so it is more ideal in the ideal computing world that I want to take part in creating".

    I have better things to do than that. Maybe you don't. In fact, I have better things to do than responding to a whiny comment of a person who yearns for the ideal but has no understanding/acceptance of the fact that the real world is far less than ideal.

    ReplyDelete
  25. I have 64 bit ( core 2 duo ) with 4GB of memory installed . OS is debian 64 bit , but I can see only 3.2GB of memory. Is this the limitation of my motherboard? System is Dell 1400 series Laptop.

    Paras.

    ReplyDelete
    Replies
    1. You might find that's due to Your Graphics Card.
      I know it's a bit late to answer, and You probably found out Somewhere else.

      However. I've just read this, no-one else has answered, so... Here We go:

      32-BIT, (Traditionally, without PAE.) can only address or, "see", up to 4GB.

      So if You have a Graphics Card, (even if it isn't on-board, sharing the Physical RAM.) You will find that Your remaining System RAM is: [Total System RAM.] - [Graphics RAM].

      So for example, 4GB. Of System RAM. as it's the maximum supported, and a 1GB. Graphics Card:
      [4GB] - [1GB] = [3GB]

      Very basic, not at all exact, but to keep things simple, I've done it like that.
      I hope that this helps Someone else, as I imagine that System and/ or Issue is long gone for You.

      Love & Peace.

      In3D. Limited.

      Delete
  26. Why are audio/video editing not important for most "new Linux users"?? I don't understand that comment... Say you're a college student... and perhaps you need to make a video for class... Perhaps you're a homemaker with three kids, and you want to put together a video of the kids at playing at the park for display at party... Perhaps you like to take pictures for fun and would like to try some of the cool effects that the "professionals" use to make photos look really cool...

    The comment "new Linux users don't need xxxxxx" is an inaccurate statement at best --- demeaning and elitist at worst... The idea of FOSS is to bring the users the best computing possible in an open environment... Perhaps the "new MS Windows users" don't need to edit anything other than RTF files unless they pay through the nose for a bunch of proprietary patent encumbered software --- But a "new Linux user" definitely DOES NEED AUDIO/VIDEO EDITING and THE WORKS! ---

    The discussion isn't 32 bit vs. 64 bit --- It really should be about getting 64 bit apps to the users so that the FULL, FASTER, MORE FEATURE RICH EXPERIENCE of Linux can be even better...

    ReplyDelete
  27. Innocent BystanderAugust 13, 2010 at 11:17 AM

    Whenever the CPU is compatible 64b I use 64bits OS. even when the machine has less than 4 GB ram. This simplifies maintenance. Never have any issue "because of 64 bits".

    I have one gripe though, Ubuntu, Menu System / Admin / System Monitor. The System tab shows kernel, CPU, RAM information but doesn't give the architecture 32 or 64 bits. I don't understand why the designer had taken the troubles to gather all the system info and forgot the architecture info.

    ReplyDelete
  28. I never said the average/new user wouldn't NEVER be compiling video/audio. But odds are they will be doing it so sparingly that waiting the extra 10 minutes once a month or so is worth it to have the software support 32 bit provides currently.

    ReplyDelete
  29. To Jeff91:

    new 32 bit Linux User: "This Linux stuff is MUCH slower than using Windows 7. I guess you get what you pay for..."

    new 64 bit Linux User: "This Linux stuff is MUCH less stable than Windows 7. I guess you get what you pay for..."

    Point - The average "new Linux user" probably tried Linux on a friend's advice after MASSIVE counseling that Linux is JUST as good as MS Windows and probably BETTER... so the "extra 10 minutes" is a bad thing... AND the 64 bit instabilities in Flash / and-or application of choice is a bad thing...

    The base 64-bit software is stable --- fix the remainder and recommend the 64-bit... For the software that is closed source --- a STABLE universal kernel mode compatibility wrapper is needed --- otherwise it's 64 bit Linux FTW...

    ReplyDelete
  30. Linux Systems AnalystAugust 13, 2010 at 12:44 PM

    I think that there is a huge misunderstanding on the benefits/detriments of PAE. I use it in a large (500+ machine) environment and the biggest detriment to it is that while it will support up to 64GB of RAM, for any one process it will only support up to 3.2GB which is the limit for 32-bit operating systems. For the standard user this is not at all a problem but for those running large memory intensive processes, then this becomes an issue. There is no real performance loss between the mainstream kernel. This used to not be true but in the last two or three years there have been many strides made to make PAE work at similar speeds to the mainstream kernel.

    As to the 32-bit vs. 64-bit issue, 64-bit still has a lot of broken pieces. You can install a 32-bit version of firefox and flash though to get it working on 64-bit. Ultimately for the new user who has not tech support to go to, I would always recommend 32-bit because it just works with all the basic technologies that they will need to use. On the server side though, 64-bit is definitely the way to go. I have yet to see a server running firefox with flash. Most of them don't even run X. There fewer and fewer cases where 32-bit is truly needed on the server.

    ReplyDelete
  31. If you all want to stick to a 4GB barrier and use PAE until the end of time, then you're fine to do so, but you are also ignorant.

    ReplyDelete
  32. I use both 32 and 64 bit: 32 bit for regular/home laptop, 64 bit on an audio/music production machine. Audio workstation doesn't need the everyday use stuff, since it's a purposed machine.
    Main reason for the 32 bit choice at home, is simply that there are a lot of bits that still don't work so well or not available at all for 64 bit GNU/Linux environment. I'd rather have everything working on a daily use machine rather than a swiss cheese system with small holes everywhere.

    ReplyDelete
  33. I just emerged from the Stone Age and got my first 64-bit system. I threw 64-bit Fedora on it, and I'm using 32-bit Flash with the wrapper, which works great.

    I only have 3 GB of RAM, but I still used 64-bit.

    The thing is running great at the moment, so I'll stick with it for now.

    ReplyDelete
  34. I just purchased a 64-bit system, mainly because it will have 8GB of RAM. I also like the fact that buying 64-bit is a small "vote" toward moving the overall market in that direction. Better start moving now, since we only have until the year 2038 before the 32-bit-dependent world comes crashing down!

    ReplyDelete
  35. The question about the "right" choice of 32- vs. 64-bit has been beaten to pieces so many times over so many years now I wonder why anyone, (myself!), even bothers reading about it. However, with development in open source being what it is, and with the conservative mindset of most Linux developers and users, I guess we just have to endure.

    I am an ordinary desktop user who has had 64-bit systems for several years and I will never go back to 32-bit unless forced. My experience is that *everything* is smoother, faster, stronger with 64-bit. I don't do much encoding/compiling, but I am working with complex spreadsheets which take forever to just load on a 32-bit system. If I had not known this and bought a 32-bit system, I would have had to upgrade to 64-bit anyway. So my advice is: if you need a computer for serious work, or if you are going to spend much time in front of it, go 64-bit immediately and be done with it!

    The are two severe problems hampering Linux (adoption): slow adaptation to modern hardware and still slower development of good apps. The lack of a usable office suite is a case in point.

    Discuss that.

    ReplyDelete
    Replies
    1. I agree with you on most part about the 64 vs 32-bit argument. Though disagree somewhat on the remark of a usable office suite. I think many would be surprised how many people still run XP and Office2007. For the average Joe Libre office is sufficient for some spreadsheet and general letter writing or maybe even a powerpoint style display for grandma's birthday. In the business world though it would still be trailing by 10 yrs.

      Delete
  36. I vote with "Anonymous" "August 13, 2010 1:53 PM" ...
    But Open Office is getting better quickly...

    I'm looking forward to GIMP 2.8, Blender 2.5, Inkscape 0.48, Gnome Shell, Open Office 3.4 and all the really terrific software that I will run on my 64-bit GNU/Linux machine...

    I would love to see a project started that would integrate Freemind with Gnome and/or Open Office... something that would allow you to organize/input tasks into your calendar using mind mapping might actually cause me to reach Nirvana... and then to be able to export the map to a web based service would be even better...

    ReplyDelete
  37. If you build a DB server you definitely need a 64 bit version OS.

    ReplyDelete
  38. 32-bit? Anyone remember expanded or extended memory? Your advice sounds similar...

    ReplyDelete
  39. The main thing is that I want what I want when I want it, how I want it; I want it gratis, and for you to have it my way (and like it)!

    Of course, some of you offered some objective data and some respect for others, just ruining the the whole parade.

    You say tomato, I say potato.

    Good read, Jeff.

    ReplyDelete
  40. QUOTE (The Dark Shadow)
    I don't give 2 turds if my software is 32 or 64 bit. I do, however, care if it works.

    If it ain't broke, don't fix it. 32 bit works. Final. Period. Users with needs that are better served by 64 bit should/can/ and will know how to use it.
    ENDQUOTE

    32-bit addressing won't work forever. Obviously software is evolving and people are doing more with their systems than they ever have; that will only continue indefinitely. 32-bit addressing and the memory limitations it imposes (disregarding hack-like PAE workarounds with debatable performance penalties) will not be able to support the needs of users within the next few years.

    There is another big problem in any 32-bit implementation, including one with PAE. As someone else mentioned previously, each application is limited to about 3 GB of virtual memory, no matter how much physical memory your system has or how large your swap files/partitions are. This is insufficient for many applications, and it's only a matter of time until your own needs outpace this limitation, if they haven't already.

    Not to mention, 32-bit architectures and applications are suceptible to the Y2K38 problem; in 28 years, 32-bit timestamps will loop back to 1970, causing actual major problems as opposed to the minor glitches and major flops of Y2K.

    64-bit addressing has been around (both in AMD hardware and in Linux distributions) for about a full decade. Why does it take so long for us, the cutting-edge technical users of computing, to adopt the technology of the future? This is something I would expect of Microsoft... ;)

    As a previous poster mentioned, complacency like this is the reason new technology often doesn't work as well as old technology. The users have to use 64-bit addressing in order to coerce the even more complacent developers to support it. If no one uses it, then there's no reason for it to improve. Come 2038, we'll all see the rebirth of the 1970s--and not in a good way, if there is one. :p

    In any case, please refrain from discouraging the use of solutions to serious future problems such as timestamp buffers and memory limitations. Your arguments are based on current poor software support, which itself is perpetuated by this lack of use that you advocate. Besides, you can still run 32-bit applications on a 64-bit system until the developers catch up to this 10-year-old technology.

    ReplyDelete
  41. I run 32 bit pae pinguy OS on my netbook (netbook is 32 bit archetecture only), and when I explained the differences of 64 bit vs 32 bit of pinguy to my girlfriend, when I put it on her desktop, she wanted the 32 bit PAE.

    She has no performance problems (8gb of ram, radeon 3200, athlon phenom I 9550 quadcore), so its not that big of a deal

    ReplyDelete
  42. I'd like to point something out...

    I don't know about chrome (or chromium) for linux, but the windows version doesn't use the flash plugin anymore...

    ReplyDelete
  43. Why isn't the C & C++ compilers optimized for 64 bit execution & hyper-threading? More work is needed on system basics before we go off to 64bit land.
    IMHO

    ReplyDelete
  44. To anonymous who complains about Office:

    We are not secretaries and we don't care about office tools. Furthermore, we have more important things to do, like discuss the 32 vs 64 bit systems. Please use Word. Thank you.

    ReplyDelete
  45. I believe the discussion here, is not linux for the server architecture, and not linux for the power user.

    The post is about linux for the mainstream consumer.

    I'm talking secretaries (I'm pointing at you anonymous 7/14/2010-3:02am), business people (non techie), 12 yearolds (junior high kids), me (college student), or the random girlfriend.

    Quality of word programs, are thoroughly important. The importance of flash is highly important (even if integrated into browser).

    I am not a highly trained, highly certified technician. I'm just a random guy who happens to know a lot about technology, and is a double major of massage therapy and psychology in college.

    I don't see word running natively in linux.
    As I use a netbook, and not some powerhouse machine in classes I need to type papers, virtualization isn't the best idea, so wine is out, unless I want to use word 2003 or later.

    I wish there was better 64 bit support on things, or even better linux office programs in general.

    Open office kind of sucks... its bloatware.

    ReplyDelete
  46. @pehjota and anonymous,
    You may as well go on a hunger strike and hope the developers will have pity on you. Far better that you supply CODE or CASH if you want to see the progress you speak of. Exactly why should developers feel coerced by a bunch of freeloaders?

    ReplyDelete
  47. @Scott,

    I am not a highly trained, highly certified technician. I'm just a random guy who happens to know a lot about technology, and is a double major of massage therapy and psychology in college.

    Don't waste your time here; go save the world or something.

    ReplyDelete
  48. It seems my point was missed. By January 19, 2038 at 3:14:08 AM UTC, I guarantee to you all that one of two things will happen:
    1. You will be using 64-bit software, or
    2. Your system time will change to December 13, 1901, 8:45:52 PM UTC. This could cause software crashes (developers usually don't anticipate tomorrow coming over a century ago) and who knows what else worldwide. This isn't something we can avoid just by saying "64-bit doesn't work, it sucks, no one supports it."
    More information: http://en.wikipedia.org/wiki/Year_2038_problem (or search the web for "Y2K38")

    This is not the first time memory addressing has been upgraded. Migrations from 8-bit and 16-bit systems were far more troublesome. We don't have the same problems today. Yes, thanks to the work of AMD, all x86-64 processors (the ones produced by both AMD and Intel) run 32-bit software NATIVELY, without performance hits, emulation, or time-consuming code ports.

    Many developers don't produce 64-bit code simply because so many people still use 32-bit systems. So show them otherwise. And yes, kenholmes, donations of money and code are great ways to push people to embrace the present (or past? ten-year-old technology...).

    ReplyDelete
  49. My choice is:

    If the distribution gives a 64bit system which also supports 32bit apps (this is possible by the hardware. distros have to supply two versions of the core libraries and apps may choose to build with -m32) then i go for 64bit installation. 64bits is definitely better at least for the kernel.

    If not, then i prefer 32bits indeed.

    Also, people should know that although in 64bit more there are more registers there is also double memory usage for pointers (and certain programs like a Python VM use a *lot* of pointers, trust me). This implicitly means half cache, which is not so great. YMMV

    ReplyDelete
  50. I get around the issue of heavyweight (openoffice) office software, by using either abiword or docs.google.com
    Usually docs

    It does support microsoft proprietary format, so it works fine for me.

    I think one hurdle thats ugly right now, is netbooks, which are a large chunk of PC sales these days, are 32bit only.
    They can't support 64bit.

    ReplyDelete
  51. @Scott, check out
    http://www.gateway.com/systems/product/529668694.php

    EMTEC's gdium is 64 bit but will have to evolve before it makes gains in the U.S.
    I expect to see more before long.

    @pehjota,
    "Show them otherwise".

    Exactly, by showing support for developers who are showing progress on 64 bit systems. That will encourage them, not coerce them. New hardware will continue to be 64 bit which means the 32 bit systems will be aging. I expect 64 bit to gain momentum. Besides 2038 come after the Mayan calendar ends :)

    ReplyDelete
  52. @kenholmes

    Yep, the Mayan calendar certainly makes this discussion, and everything else, rather moot...

    64-bit has finally started gaining momentum the last couple of years and is really a non-topic in my opinion. As I suggested above, we should discuss applications instead. How about parallellized apps, now that we all soon will be using multi-core processors? How many years will pass before we see our programs utilizing our CPU's to full capacity. Well, make that 97%... ;)

    ReplyDelete
  53. Jeff,

    Thanks for the article. I was looking for one on the ups and downs of 32 vs 64 bit. Your article helped some.

    That said, it's amazing to me to see this argument. Should we use 32 bit or 64 bit? I don't recall having this argument when we went from 8 bit to 16 bit or 16 bit to 32 bit CPUs. Well maybe a little discussion over 16 to 32, but then my age is showing. I still remember that famous quote about never needing more than 640KB of RAM. In fact I still have a, potentially, working XT 8088 clone w/ a full 20MB HD.

    We should really be pushing for getting 64 bit apps working full out. But since, I'll be doing the occasional Blender rendering on my PC, I guess I need to go 64 bit anyway. You haven't been to hell until you've rendered video on a 32 bit desktop. I know, because I've used LFS and gentoo.

    ReplyDelete
  54. Lord God, people, read the freaking post carefully then STFU, lol. My $300 32-bit Presario isn`t going 64-bit anytime soon, (read never) and I don`t have the bux to buy a new one. In 2038 I`ll most likely be dead, (I`m 53), and if I`m not I`ll kill myself if I have to listen to a bunch of idiots like you people. Jeff stated at the beginning who the article was directed to: people like me that go to Youtube, send emails and Google terms like Pollyannas, (hint). Chromium comes up in a blink, my system has zero-lag and that`s all I need, or want. Christ...

    ReplyDelete
  55. Maybe we should all just stay with 32bit forever so stupid arguments like this won't happen.

    ReplyDelete
  56. FYI.... Part 1.

    If you don't learn history, YOU ARE DOOMED TO REPEAT IT!

    Remember the old movie Cool Hand Luke? The warden stands up and and says " Wot we haayve hyar, is Failer to Co-Moon-icate" (mis-spelling intended).

    I do see dates, and what the author intended to say, BUT STILL, I have to draw back on computing history to give an example that seems to be one major point every single person here has missed.


    If any of you were around computers in the days that advancements began to occur frequently, from 2k base ram and up, you will notice a very similar situation here in this discussion.

    When we saw a 2k to 4k jump for base mem, we saw excitement, and with every advancement there was more excitement on the part of the end users until, we hit the 16 mark, it was nice but everyone began to complain there was anything decent, not a big enough selection etc.

    Time went on, and we hit 64k and 128k and then suddenly, it wasn't a try it and see option, it was just complain and do do it cry, saying it will just be a headache for the average user, they won't know how to deal with it, and there isn't any reason for it.

    Needless to say we hit 256 base ram right away, and then 512 with it inching up to a 640k base if you had 1mb installed, and eventually we got our extended ram up to 2, then 4, then 6 and so on.

    Here is where it gets sticky, the ram was always seen as a good improvement after we reached 640k base ability, by all users, BUT the width of the processing power began to show some unwanted features. Jumping rapidly from 4 bit to 8 bit and 16 bit, and leaving the software in the dust is how the problems began to occur in the user acceptance arena. Most software that the general user population liked was all written by private individuals or a couple friends, and all these authors were only experienced in lower bit rate code usage and thus continued to write for the lower code levels because in those days it was SHARE-WARE, and if your software needed some higher end equipment to run, it would be a long dam time before you got your first penny.


    TO BE CONTINUED NEXT POST

    ReplyDelete
  57. FYI... Part 2.

    In time companies formed, more software was being put out faster, and more was available, but the bit rate bottle neck grew, and the 16 bit level which stood for a while longer than most finally got trumped with 32, which turned out to be not as backward compatible as hope with many software programs that were way over priced. People screamed loudly that their very expensive programs no longer work and they want 32 bits back off their computers.

    Now as the software business grew, and some large companies became giants in software development, they began producing software for equipment far ahead of what anyone had in their homes forcing people to continually upgrade. Which then began to anger many over a new subject, "up Grading, and that began to turn them cold on buying anything new because they saw this minimum requirement level on the package, and would buy it if they fell in that range, but they found out over time minimum only meant it would install, never says anywhere that it will RUN at the minumum, and thats what forced people to up Grade their systems, and get pissed because they just put a couple bills for a video card and now it's not fast enough. So the consumers said #$%$#%^% @#$#*$^$^# NOT ANOTHER CENT FROM ME YOU CORN HOLES!

    Then if you remember M$ took a leap, tried a 64 bit XP, but nobody bought it, they were ALL PISSED OFF, no more advancement in technology level upgrades were accepted by the public as a whole.

    A few years later, and a few levels and improvements to the motherboards and cpu's brought about a new interest in the XP 64 bit but there wasn't any software for it, so M$ and couple other companies began to prepare for a new level of OS and CPU ability, and they worked together to develop software and hardware to work in both 64 and 32 bit environments as if to be native, the only mistake was that in Vista they buried the user under a security system called UAC (User Account Control) which had a myriad of levels and pops warning that you are installing something you already know your installing......DOH,,,, Well so M$ is entitled to a few lame mistakes, but that one used up the whole 9 lives of mistakes they had acceptably coming to them. On top of that so many changes in how Windows Explorer worked PISSED off the world. Ok let me count to 10,,,, BRB...

    OK, I'm calm again..... :) Any way, it is still a move forward, and an advancement in abilities and possibilities. Both on the part of hardware and software alike. We DO HAVE plenty of software out today to fulfill anyone's needs in the 64 bit environment, and at the same time all 64 bit OS's except for this recent Mac OS upgrade are very well settled into a niche of being fully able to segregate operate smoothly with any 32 bit programs you may wish to still use.

    BUT, as I am trying to show here, we have this old agenda of distrust, which for the most part is good advice, so long as it's in the proper time frame, but as for today...

    Linux systems are finally turn key, meaning you can buy a brand new system with a flavor of Linux pre-installed and guaranteed. Software's now everywhere you look are Windows, Linux, Mac choices, or at the very least WINDOWS and LINUX.

    Linux fans should be proud. We came a long dam ways, so WHY THE DAM SCREAM AND CRY TO STOP NOW?

    ReplyDelete
  58. FYI.... Part 3.

    If you have a 64 bit system, why in the name of God would you waste your time installing 32 bit, and spend a year or two getting it up to running the way you want with the software you want and at the same time saving and store, creating and what ever to fill you system up and then be forced to re-install and start over next year with a 64 bit OS?

    In a 32 bit system you install a program, you use it, you uninstall a program.

    In a 64 bit system you install a program, you use it, you uninstall a program.

    In those two sentences, they are the same length, they can't be all that hard to understand.

    .....................................

    I repair a lot of systems, rebuild, recover, design for intended purposes, and I provide the extra mile help and support including what tools and methods of learning people should try. I have seen it all.

    So I am here to say, those people who DO NOT HAVE much computer knowledge, and most likely won't attain it in the near future, YOU CAN'T make any WORSE recommendation then to tell to STICK WITH THE DINOSAUR SYSTEM.....

    I hate having to tell some body next year they need to start over and learn something new.

    Nuff Said ¿

    Jack the Great.

    Located here in the Mystical Babylon, yes the city that is not a city, and it encompasses the entire world, a multitude of amazement's and colors, it's the darkest alley of the world, Larry Ellison is trying force you to take a chip in your hand, read his web site and see. The bible foretold all of this so clearly.

    Enjoy...

    Ready for 128 bit, 256 bit, and the end of the world.

    ReplyDelete
  59. P.S. Thanks for maintaining this blog. Nice to see one that seems to be pretty much up to date.

    ReplyDelete
  60. 64-bit Gentoo user here on a core 2 duo with 4GB of RAM. No problems whatsoever. Can't really see the reason for sticking to 32-bit.

    ReplyDelete
  61. So..... what can one do if he/she has a printer with linux drivers provided in only 32 bit, but wants to continue to use their perfectly operating 64 bit Ubuntu??

    ReplyDelete
  62. To all those who say PAE affects performance, please do some research. Sure, in 32-bit you have a choice, and yes, PAE does affect the speed, but 64-bit use PAE by default. Also, if you think about Windows, DEP activation for the whole system implicitly activates PAE (although MS still limits you to 4GB adress space).

    ReplyDelete
  63. I think Y2K38 will be as big of a deal as Y2K turned out to be for the average person...

    ReplyDelete
  64. im going to through this out there but linux needs to begin the 64 bit development we have seen this transition before in the 8 to 16 bit and 16 to 32 bit generations when as the hard developed for that software that didnt update with fell by the wayside

    ReplyDelete
  65. im getting the amd phenom ii 6 core 3.3/ 3.7 ghz processor, ive never used linux much before and im gonna put ubuntu on my system. my friend recommended me to use ubuntu 10.04 he said it runs better than the 10.10. im gonna primarily use my system for game development using unity 3d, and probably blender for the modelling (at least for now), mixing music, downloading/ listening/ watching music and movies and burning them to disks. not much for webbrowsing, i only use the internet for checking mail, research, and looking for new parts for my system. and im going to run 16gb of memory. so personally... im using the 64 bit version.

    ReplyDelete
  66. altho i will have to run the game development software on windows which ill have installed on a seperate hard drive. i dont think unity 3d works in linux right?

    ReplyDelete
  67. We're well into 64 bit hardware territory. It's been over 20 yrs since DEC Alphas came out.

    If the hardware is 64 bit, the kernel should be 64 bit. Or else what's the point in having 64 bit hardware?

    If there are app problems, run a 32 bit VM.

    Would you run a P4 in Celeron mode just because an app (with DMA, think Flash) can only use half of the L1/L2 cache?

    The conclusion of the article reads like:

    Half of the L2 cache of the P4 is good enough for everyday usage, so it is suggested that you run your P4 in Celeron mode.

    Just because half of the comments agree doesn't mean it's correct. That's a Rupert Murdoch right there: All Spin Zone. Popularity is not Accuracy.

    KISS. 64 bit kernel for 64 bit hardware. If you want to run a 32 bit kernel, get 32 bit hardware.

    ReplyDelete
  68. I find all this interesting but let's take it down to the base. 32 bit or 64 hw isn't the issue. 32 bit or 64 bit kernel and userland isn't the issue. What is the issue, pure and simple, is:

    What platform will run all my software that I want to run without me having to jump through hoops to hotrod the system so it will run?

    I run a single 32 bit only application so the choice for me is 32 bit. It's just that simple. From reading the posts, I get the impression that some of you don't understand the simple concept of it has to work for the basic, non technical user. This shouldn't be a foreign concept to anyone here as I'm sure all of you have worked in the business world. I'm sure many of you understand that at the end of the day, it works as it's suppose to or you're out of job. (if you want to create extra work for yourself, go right ahead)

    There is no difference here. At the end of the day, the system has to do what I want it to do. This doesn't make me stupid or inept. It makes like the guy that signs your paycheck and can fire you. I want it working and I don't care how it does it and have neither the time nor the inclination to tweak the system.

    You will find the 90% of the world that doesn't work in IT and isn't the slightest impressed with any this tech vs that tech argument feels this way too.

    In other words, make life easy and go 32 bit on your desktop and save the 32 vs 64 argument for someone who gives a damn. I'm going to do something that's actually productive.

    /end soapbox

    ReplyDelete
  69. http://www.adobe.com/products/flashplayer.html

    "Native 64-bit support
    Flash Player can now take advantage of native support for 64-bit operating systems and 64-bit web browsers on Linux®, Mac OS, and Windows®."

    ReplyDelete
  70. Yep over a year later Adobe adds support for 64bit Linux again. Never mind that they have "supported" it in the past only to drop it at a future date.

    ReplyDelete
  71. For me it's a no-brainier because Solaris has been running 64 bit for years now and is very stable. It also has the 128 bit ZFS filesystem. So why am I in a Linux forum? Well, for reasons I can not fathom finding the latest, really neat GUI binaries is easy in Linux and impossible in Solaris. Same goes for much of the scientific software. Anyone have any ideas of why that is so?

    ReplyDelete
  72. I currently run XP Pro on one drive and 32 bit PCLOS on another.

    I have 3gb of RAM and an AMD64 X2 CPU (4200).

    I was thinking of installing a 64 BIT Linux OS and when needed run a VM for a 32 BIT version of Linux or even XP.

    I would get the best of both worlds.

    Any thoughts?

    ReplyDelete
  73. Hmmm, lots of talk. Do some reading:
    http://www.amd64.org/fileadmin/user_upload/pub/64bit_Linux-Myths_and_Facts.pdf

    ReplyDelete
  74. Too bad this post turned into a battle. Jeff only wanted to express his opinion at the current point in time. I 'll bet 32-bit was the better choice a year ago. 64-bit is the future, as will be 128-bit. And you can't argue that unless you are still running an 8-bit DOS system and running your software off 5.25" floppies. Probably what would be more informative is for people to chime in with their current configs and experience and then let others and beginners make their own informed decision from your concrete information. I have been running 32-bit Opensuse on my Dell with 4GB RAM and 30GB HDD. for a couple years. It ran great until the last few upgrades of Opensuse 11.4 and Firefox 9.0. I am also at 94% usage on my HDD. The system performace is lacking now. I reverted back to FireFox 3.6 to get back some performance. I don't know where the bottle neck is but my theory is WEBKIT went south in memory management.

    Anyway, I just ordered a new Core I5k, with 16GB RAM, 500GB HDD. That should hold me over for another 10 years. You can bet your bottom dollar I am going to install 64-bit Opensuse 12.1. And if it gives me trouble I will just go back to 32-bit or even 11.4. But I will google around to see what everyones experiences are. Which led me to this blog. Thanks Jeff.... Your opinion helped me.
    The people who preached about how other people don't know what they are talking about did not help me.

    I don't consider myself a power user. I browse the web, I develop some web sites here and there, read e-mail. However, even just the basics lead into more complex avenues quickly. Web development requires, XAMPP, multiple browsers, for testing, an IDE, etc... And of course you always want to gimp an image every once in a while. SO if 64-bit helps only with GIMP then so be it.

    And I do have to get another 2 cents in about Windows... Because some numb nut above tried to pass windows 7 as being faster and more stable than linux. I run Opensuse 11.4. I can't even remember the last time I had to re-boot my PC!!! In fact just 20 minutes ago my scanner caused a system failure which RARELY happens and linux gracefully killed the process and allowed me to restart the task. NOT THE WHOLE FRIGGIN PC! Opensuse Allows me to install ALL upgrades at MY OWN discretion without a single RE-BOOT!
    Just last week I wanted to bitch slap Bill Gates every 5 minutes when my Windows laptop kept prompting for a re-boot.



    OHHHH you want to talk about performance.... Come talk about your Windows bullsh$t AFTER you have 2 different anti-virus scanners running, 2 or 3 different maleware scanners installed. Then.. lets talk about performance!

    Microsoft is a GREAT company that does GREAT things HORRIBLY!

    ReplyDelete
  75. 64bit:
    -produces fat binary and larger memory footprint(because of memory padding/alignment) which in turn impact your slowest component of your system, which is your harddisk.

    +much better suited for things that need high performance(extra registry of 64bit if programmed properly)


    so if your doing basic stuff and non of the high-end computing stuff, stick with 32bit. it is still alive and kicking.

    ReplyDelete
  76. I do not see the point here everyone is arguing about.

    If you have a 64bit hardware use it to learn, play with it more often to get to know the new world. Use 32 bit untill it supports more stuffs. When they stop supporting, change to 64bit and move on.

    We are discussing about a 32bit and 64 bit, who knows we can be using 128bit as a general user in future.

    So my point is - Use which is best for you now, keep your options open and mould yourself accordingly in future so that you do not feel like new to the world that's it.

    ReplyDelete
  77. You haven't mentioned computation, equation solving, etc. There the 64 bit CPUs significantly can reduce calculation times. And now 64 bit CPUs are available for desktop PCs, so unless you are using applications like Microsoft Office go 64 bit. If CPU time is not a matter to you (survellaince applications) sty on 32 bit.

    ReplyDelete
  78. This article was published on Thursday, August 12, 2010. As an IT professional, I would say at the time this was excellent advice. The software hadn't yet caught up to the hardware. The average user needs his applications to work reliably. I still use 32-bit for diagnostic tools on CD or Flash because there is still a lot of old hardware out there that people would rather keep than replace. That being said; current levels of technology indicate 64 bit is now the better choice for the desktop

    ReplyDelete
  79. I have to install Linux on a system limited to 8GB RAM (that's how much the MB supports), and on which I also have to run at least two VMs at the same time. Using 64bit Linux wastes too much mem, IMO, in this setup. Since I don't run any app which gains a lot from running on 64 bit (no heavy image or video processing at high bit depths, or such), and PAE perf penalty is negligible, I'd say the advice against 64 bit on the desktop is still valid.

    It all depends on the data structures of your apps. If lots of the primitive values manipulated by your apps are 8 bytes long, 64bit is the way to go. But that's not yet the case, AFAIK. Even image manipulation happens mostly at bit depths below 32bit, for now. I'm not even sure many server-side apps are really benefiting from 64bit kernels. I guess apps moving huge binary chunks around in mem, or performing lots of floating point calculations would benefit from 64 bit, but how many people do 3D rendering or heavy internet routing on their desktop machines?

    ReplyDelete
  80. You can have the best of both worlds. Install a 32 bit distro and install a 64 bit kernel.

    ReplyDelete
  81. Just a quick note here:
    plain 32-bit x86 uses a two-level page table.
    PAE 32-bit x86 uses a three-level (slower) page table.
    64-bit uses a four-level (slowest) page table.

    64-bit is essentially PAE II.

    Note that it is also possible to handle 64-bit data in a 32-bit environment (long long anybody?), allowing 64-bit time and such.

    With fat 64-bit integers and 64-bit pointers, 64-bit code uses up twice as much memory, and even more importantly, twice as much _cache_.

    Most of the "speed improvements" seen in benchmarks running "64-bit" code are from SSE being used or compiler flags other than -march=386 -mtune=386.

    ReplyDelete
  82. Heh!
    Excellent advice from Jeff, as ever - but it's approaching its third birthday and things have changed since it was posted,
    64-bit is indeed far more mainstream nowadays, imho.

    If you own an Epson Stylus CX5500 or similar scanner/printer you may find (as we did) that all of its many problems go away when you try the current Bodhi Linux 32-bit PAE (on an AMD 245 X2 desktop with 4GB RAM) rather than Bodhi Linux 64-bit - which works fine in other respects.

    Who knew? Well, I didn't. The PAE 32 does not run noticeably faster or slower than 64 from a user perspective - subjectively it looks and feels fast, according to friends with quad-core Intel hardware and W7. Suits me.

    ymmv!

    ReplyDelete
  83. I just spent the better part of Memorial Day weekend trying to get ANY 64-bit Linux to work on my spanking brand new Gigabyte (GA-970A-DS3, Rev 3.0) motherboard and get the steenkeng Realtek gigabit NIC (8011E/8189 I think it is) to work. Downloaded drivers, compiled, installed, re-cooked initramfs, all kinds of "black magic." Mandriva, Ubuntu, Fedora - all 'Pfft!' I finally gave up and installed a (lowly) 32-bit version (Mandriva 2010.2) and "PRESTO* suddenly I had a working NIC. Like somebody several paragraphs said - If it doesn't work it doesn't matter how fast it is (or would be).

    PS - I couldn't get 64-bit Windows 8 to install AT ALL, regardless of whether the NIC mith work or not.

    ReplyDelete
  84. Well it is 2014 and I suppose the war rages on though it seems to have cooled off here... About to install LM16 32-bit on a 64-bit laptop alongside Win7 64-bit. Why? I don't need it to run 64-bit on the linux partition. Also. Because I can because I have a choice.

    ReplyDelete