Announcement

Collapse
No announcement yet.

Ubuntu 32-bit, 32-bit PAE, 64-bit Benchmarks

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

  • Ubuntu 32-bit, 32-bit PAE, 64-bit Benchmarks

    Phoronix: Ubuntu 32-bit, 32-bit PAE, 64-bit Benchmarks

    Coming up in our forums was a testing request to compare the performance of Linux between using 32-bit, 32-bit PAE, and 64-bit kernels. This is coming after Linus Torvalds has spoke of 25% performance differences between kernels using CONFIG_HIGHMEM4G and those without this option that allows 32-bit builds to address up to 4GB of physical RAM on a system. We decided to compare the performance of the 32-bit, 32-bit PAE, and 64-bit kernels on a modern desktop system and here are the results.

    http://www.phoronix.com/vr.php?view=14477

  • #2
    Did you just use a the 3 kernels and kept the same 32bit user space or did the 64 bit kernel use 64bit user space?

    If the latter do you know what Ubuntu compiles it's 32bit user space as? If memory serves I think ubuntu are using i486 on 32bit user space where as the 64bit user space will be using sse2 as default which could explain some of the differences

    Would it be possible to try the same test again using Gentoo or Arch (or another distro that uses i686 as default)

    Cheers

    Mike

    Comment


    • #3
      One remark: in the switch from x86 to x86_64 the number of GPRs and XMM register is doubled, and of course 64bit ops require only one output register. In the OpenSSL (and John The Ripper) test case the big difference is probably due to the improved ISA rather than to bigger AS (iirc crypto was one of the showcases of earlier amd64 CPUs).
      In general PAE will impact negatively the performance only once the kernel has to map/unmap pages that are not currently accessible; at least in OpenSSL, x264, blowfish and other CPU bound tests I don't expect a significant pressure on mm (hence the small difference between PAE and non-PAE).

      Comment


      • #4
        It's great to see such comparision!
        I've put 3GB RAM into my machine few days ago and with default Ubuntu kernel I have only 2,5-2,7GB available. I was thinking to use PAE enabled kernel but I've heard about serious performance drop mentioned "everywere". I can't use 64bit kernel because my CPU is only 32bit.

        Comment


        • #5
          Originally posted by FireBurn View Post
          Did you just use a the 3 kernels and kept the same 32bit user space or did the 64 bit kernel use 64bit user space?

          If the latter do you know what Ubuntu compiles it's 32bit user space as? If memory serves I think ubuntu are using i486 on 32bit user space where as the 64bit user space will be using sse2 as default which could explain some of the differences

          Would it be possible to try the same test again using Gentoo or Arch (or another distro that uses i686 as default)

          Cheers

          Mike
          Gentoo ? default ?
          You may mean Sabayon (i586) ?
          Once Ubuntu used to have i386, i586 and amd k8 binaries.
          Just waste of resources (silicon). Gentoo is up to 4 times faster compared to Ubuntu. To gain such advantage in HW, you'll usually spend a lot of money.

          Comment


          • #6
            Originally posted by n0nsense View Post
            Gentoo ? default ?
            You may mean Sabayon (i586) ?
            Once Ubuntu used to have i386, i586 and amd k8 binaries.
            Just waste of resources (silicon). Gentoo is up to 4 times faster compared to Ubuntu. To gain such advantage in HW, you'll usually spend a lot of money.
            What?

            I'm trying to say that changing the default compiler options on 32bit systems can show huge differences

            Phoronix could show the differences quite easily using their test suite

            I think I've seen a non-Phoronix article showing just that using the PTS

            Comment


            • #7
              Originally posted by FireBurn View Post
              Did you just use a the 3 kernels and kept the same 32bit user space or did the 64 bit kernel use 64bit user space?

              If the latter do you know what Ubuntu compiles it's 32bit user space as? If memory serves I think ubuntu are using i486 on 32bit user space where as the 64bit user space will be using sse2 as default which could explain some of the differences

              Would it be possible to try the same test again using Gentoo or Arch (or another distro that uses i686 as default)

              Cheers

              Mike
              Well sse2 being part of the standard ABI is one of the advantages of x86_64 (i.e sse2 is always available).

              And the summary gets it straight to the point there is NO reason not to use x86_64 on x86_64 capable hardware.

              Comment


              • #8
                Originally posted by Dragoran View Post
                Well sse2 being part of the standard ABI is one of the advantages of x86_64 (i.e sse2 is always available).

                And the summary gets it straight to the point there is NO reason not to use x86_64 on x86_64 capable hardware.
                Have they proved that you should be using the Ubuntu 64bit CD or have they proved that if you use the 32bit CD you should install a 64bit kernel?

                Comment


                • #9
                  Originally posted by FireBurn View Post
                  Have they proved that you should be using the Ubuntu 64bit CD or have they proved that if you use the 32bit CD you should install a 64bit kernel?
                  The former, a 32bit app running on a x86_64 kernel cannot (and does not) provide performance gains like this (the kernel itself should have a very small impact if any (in most benchmarks); as shown with the PAE vs. NONPAE kernels).

                  Comment


                  • #10
                    Originally posted by Dragoran View Post
                    The former, a 32bit app running on a x86_64 kernel cannot (and does not) provide performance gains like this (the kernel itself should have a very small impact if any (in most benchmarks); as shown with the PAE vs. NONPAE kernels).
                    The problems is they haven't specified this - in fact they've only told us the differences between the kernels

                    Comment

                    Working...
                    X