Announcement

Collapse
No announcement yet.

32-bit vs. 64-bit Ubuntu 13.04 Linux Performance

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Sonadow
    replied
    Originally posted by Nuc!eoN View Post
    Can anybody explain to me why 64bit browser versions are so inefficient?? I mean firefox even dropped plans for 64bit as far as I know because of performance reasons...
    That's complete rubbish. Firefox never stopped providing x64 binaries for Linux.

    They dropped x64 binaries for Windows in November last year because most users always ended up opting for the 32bit build, and because many third-party plugins on the Windows side are still 32-bit only. And even then, they never went through with it because come December the team had a change of heart and decided to continue with the production of a x64 version of Firefox for Windows.

    And frankly, compiling Firefox on Linux (both x86 and x64) is rather easy on Linux because Mozilla maintains a set of instructions for doing so in their developer pages. It's the x64 compilation on Windows that is much harder because of the need to make Microsoft's Visual Studio compiler play nice with the variety of (typically) Linux libraries like GTK, autoconf and perl, all of which have to be properly imported in Windows before building can even proceed.

    Leave a comment:


  • duby229
    replied
    Firefox has supported being compiled 64bits for years. The only problem that used to exist was adobe flash player didnt release a version compiled 64bit. That is no longer the case and there really is no difference between firefox32bit and firefox64bit.

    Leave a comment:


  • Nuc!eoN
    replied
    Can anybody explain to me why 64bit browser versions are so inefficient?? I mean firefox even dropped plans for 64bit as far as I know because of performance reasons...

    Leave a comment:


  • kobblestown
    replied
    Originally posted by schmidtbag View Post
    That only happens if you use a discrete GPU. With an integrated GPU, sure you could still get less than 4GB of usable system memory but you don't actually lose access to the memory, it's just redistributed.

    Also, most x86-32 linux distros enable PAE. The problems it causes (in terms of stability and performance) are negligible.
    I think you are mixing the issues somewhat. The lower 4GB of physical address space are never entirelly mapped to RAM. There are regions there dedicated to I/O. Yes, the discrete graphics cards are the biggest offenders but not the only ones. Without any graphics card (discrete/internal) I think you are looking at 256MB reserved area. It only gets bigger with any device you add.

    The RAM that should have been where the I/O regions are is remapped above the 4GB limit in physical address space. The remapping is set up by the BIOS so check if you have this option enabled otherwise you might really "loose" that RAM. Provided that mapping is in place, it might be that the OS restricts the phisical address space to 4GB even if it could manage more by means of, say, PAE. 32-bit client version of Windows do that for fear of badly written drivers that don't expect to be allocated physical memory above 4GB. I guess that's not the case with Linux because most drivers are part of the kernel and should be 64-bit safe. But you cannot infer this from "first principles". It's just a fact that is either one way or the other.

    In any case, it's not a good idea to run 32-bit kernel with more that 2GBs of RAM because of the kernel memory mapping issue I wrote about. Well, it's not a big deal either. But there really isn't any good reason to run a 32-bit kernel with 1GB or more. Maybe if you have a binary-only 32-bit driver but that must be quite rare these days. And if you use 64-bit kernel, why not use 64-bit userland too? You can still run your 32-bit applications. Like that they even get full 4GB virtual address space, rather than the default 3GB with 32-bit kernels.

    Leave a comment:


  • vk512
    replied
    32-bit is way ahead as regards to battery life

    Originally posted by nightmarex View Post
    why everyone has a love affair with 32 is beyond me.. oh yeah Windows. Took them what? until 2005 to even support it.. we had support in 2001 =).
    Ok most people here are focused on raw performance, but having switched back and forth a couple of times since 2007 I now stay with 32-bit on my laptops. On the whole the fact that it consumes less RAM makes it easier on the battery, yet I admit I didn't do a bona fide comparison to see if this would imply more CPU time. As I perceive it, for the usual stuff (office + web, no big games) 32-bit seems more efficient.

    Leave a comment:


  • kobblestown
    replied
    Originally posted by nightmarex View Post
    Yes there are more registers in the AMD_64 protocol.
    no, most programs don't use them
    Dude, with amd64 all programs use the larger general purpose register file. The compiler automatically generates code for that. Same for SSE2 - that's the way amd64 implements FP math. No x87 there.

    On the contrary, very few programs benefit from the 64-bitness of registers. Because they have to be explicitly written to do so (and the default word width is 32-bits even in 64-bit mode; the 64-bit instructions require an instruction prefix). A notable example is openssl which is quite a bit faster on amd64 because it uses 64-bit math. Not many others do that.

    Leave a comment:


  • schmidtbag
    replied
    Originally posted by kobblestown View Post
    BTW, are you sure you have access to all your 4 gigs of RAM. If you use non-PAE kernel you' probably have 3.5GB or sth like that. Windows keeps it like that even for PAE kernels. I don't know how it is with PAE-enabled Linux kernels. But Linux calls PAE "an ugly hack". I've switched to 64-bits and never looked back.
    That only happens if you use a discrete GPU. With an integrated GPU, sure you could still get less than 4GB of usable system memory but you don't actually lose access to the memory, it's just redistributed.

    Also, most x86-32 linux distros enable PAE. The problems it causes (in terms of stability and performance) are negligible.

    Leave a comment:


  • nightmarex
    replied
    Originally posted by BO$$ View Post
    Any ideas why the big difference in some cases? I was hoping they were more or less equal, maybe with the 64 to have an edge.
    64 bit is superior at data crunching because of it's larger register size. Other than that, the only other glaring reason to go 64 is large ram support.

    Yes there are more registers in the AMD_64 protocol.
    no, most programs don't use them (same with all the mmx,sse,3dnow etc no one ever used (I did but that's besides the point).

    There are other benifits and backfires (large address space), still wish we could get some 64 bit games why everyone has a love affair with 32 is beyond me.. oh yeah Windows. Took them what? until 2005 to even support it.. we had support in 2001 =).

    Leave a comment:


  • plonoma
    replied
    @Mike Frett

    https://wiki.archlinux.org/index.php/Multilib

    5 apr. 2013 – Enabling the [multilib] repository allows the user to run and build 32-bit applications on 64-bit installations of Arch Linux. [multilib] creates a ...
    It is also mentioned in the article that the state of multi lib is good enough to go for 64 bit even if you have a lot of 32 bit applications.

    Leave a comment:


  • kobblestown
    replied
    Originally posted by Mike Frett View Post
    I confess, I use 32Bit Xubuntu. I use it for compatibility and because I have only 4GB Ram. I also use it because, at the time I got the ISO, the page actually recommended I use the 32Bit version. There are still people having issues with 64bit believe it or not and a lot of software only has 32bit versions. I can say with confidence, I'll be using 32bit for the foreseeable future. At least until I get 8 or 16 GB of Ram, then I'll move to 64Bit. But right now I have zero use for it, 32Bit is working out fine for me. I understand I may sound odd to some of you, but it's working out great for me.
    Mike, on Linux you really want to use 64-bit kernel even physical RAM of 1GB (or larger, of course). Due to the way Linux partitions the virtual memory space, there's only 960MB in the kernel-reserved area to map physical memory. So it often has to remap if it needs to access RAM that is not mapped at the moment. I don't know how much it slows down the system - maybe not by any signifficant amount - but why bother. Just use 64-bit kernel and 32-bit userland. The 32-bit support on 64-bit kernels is flawless.

    BTW, are you sure you have access to all your 4 gigs of RAM. If you use non-PAE kernel you' probably have 3.5GB or sth like that. Windows keeps it like that even for PAE kernels. I don't know how it is with PAE-enabled Linux kernels. But Linux calls PAE "an ugly hack". I've switched to 64-bits and never looked back.

    Leave a comment:

Working...
X