Announcement

Collapse
No announcement yet.

Our Last Time Benchmarking Ubuntu 32-bit vs. 64-bit

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

  • #31
    Originally posted by AndyChow View Post
    Wow, I got whipped by users saying that 32-bit was much faster than 64-bit. I still don't understand really why there should be a difference, Both should be treated atomically, and simply be called when asked. Perhaps these incredible differences are mostly caused by new instructions. As everyone, I prefer the new instruction set we have access to, but the current x86-64 should have exactly the same number of operations and latency as the x86 instructions for 32-bit data-types on x86 or 64-bit data-types on x86-64. An "iMUL" operation should still take a single cycle and take a latency of four cycles.

    Am I wrong?
    • 64-bit binaries use 8 bytes per pointer vs 4 bytes per pointer, which from a naive perspective puts memory usage in 32-bits favour however this is false because as stated you need to carry around 32-bit libs which more than overshadow the gains
    • 64-bit binaries have access to more registers than 32-bit ones, this is in favour of 64-bits
    • 64-bit binaries have access to newer SIMD instruction sets which are much faster, this is massively in favour of 64-bits

    So I mean... What you're saying isn't wrong, but there's more to it than just the normal instruction set to consider.

    Comment


    • #32
      Originally posted by Luke_Wolf View Post
      That said this shows your experience really isn't that flawless in spite you saying so. you need to download videos to watch them as opposed to streaming them
      I am streaming them. A pipe is all you need. But i have to admit flawless is quite an exaggeration... Let's say good enough?
      Originally posted by Luke_Wolf View Post
      meh, 1-2k every 5 years isn't going to break the bank, for someone with a reasonable income, although in your case probably more like $500 every 5 years as your performance requirements are so low.
      I do have no income (soon to be student) but i do have faster PC's (my Uncle works at an IT company and i got some "old" PC's from him). This PC is used as additional PC if more than 3 family members want to use a computer at the same time. (eg when playing multiplayer) As it is the worst one i have, it gets seldom used, but is a working machine nevertheless. There were times all other PC's had problems (they seem to like having problems at the same time ) of some sort and we had to resort to this machine to do schoolwork. I am no friend of replacing things before they get unusable, just because some company thought that no one would still use it. It seems to be a very Microsofty thing to do.
      Originally posted by Luke_Wolf View Post
      You'll probably want to start looking into Gentoo though, because the maintenance burden doesn't justify the benefits for most other distributions and they're going to continue dropping them other than Gentoo which only has to worry about compiling the bootstrapping kernel and minimal set for you.
      Gentoo sure sounds interesting but compiling everything myself is to time intensive, and to much wasted energy for me (especially on such old hardware). If or when 32bit really gets dropped on Lubuntu for good, i'll most likely just switch to debian as i don't think they will stop supporting 32bit before the kernel or gcc does.


      Originally posted by torsionbar28
      Also consider the performance per watt. Older hardware can consume significantly more power to perform the same tasks as a newer machine - that's not so good for the environment.
      Of curse the performance per watt is bad, but the power usage itself is low, i think this computer might be the one with the lowest power usage of all that i use. The performance in most things is so bad it is still by far the worst in performance per watt, but as they in reality all use nearly the same amount of power (maybe the old one even a little bit less) when not taxing the newer PC's (a little bit of browsing) the old one is more energy efficient than the new ones, especially the power-hungry amd ones without good energy saving modes. As soon as you want to do something harder than that the Pentium 4 takes a lot more power for the same work, simply due the fact that it needs 4 hours while the fastest one finishes it (with more than twice the energy draw) in 5 minutes. (the numbers in the last sentence are not measured, but you get the idea :P)
      ->
      If i do something not limited by computing power (watch videos, read webpages), the old one is at least as efficient or more efficient than the new ones, because they scale down badly. i don't know if truely modern computer (my newest one is a Intel Core i5 750 based one pared with a RX 460) are better in that regard.
      If i were to do something limited by computing power, i would not only be very patient, but also waste energy, if i'd use the Pentium 4.

      One of the things more power efficient in that regard would be something like a Rasberry PI, but that lacks software compatibility and is thereby infinitely less efficient than the current one at some of the tasks i want him to do (e.g. old games).
      Another thing would be proper multihead support for linux. I think it would be the best (in terms of energy usage) soulution, as i could, if this would work, only have one (the fastest) PC running and still could provide 4 seperatly usable interfaces to all users. But this is sadly something no one seems interested in (at least not enough to implement it or pay someone to implement it), although it could help company's or me reduce their costs and energy output without loosing much (as most of the time the computers are idling around only to be taxed 5 times per day per user to e.g. compile or render something).

      Comment


      • #33
        You should have tested compiling Firefox on 32-bit system good luck with that

        Comment


        • #34
          Old x86-32bit computers, especially antiquated Watts hungry Pentium 4, should have already been replaced by cheap Pico ITX PCs, running modern multicore 64bit ARM CPUs, with 8GB RAM or more, SSDs, discrete graphic card detachable/upgradeable graphic cards, built in Bluetooth and Wi-Fi capabilities, compact low powered power supply.

          Comment


          • #35
            If you really want to continue to use an old PC that is not capable of x86_64, you should use Ubuntu LTS or Debian stable. You're probably better off with these anyway, as software gets more bloated over time. Ubuntu LTS 16.04 is going to be supported until 2021. Debian stable even longer until 2022. You aren't seriously considering to use these really old 32-bit desktop machines for longer than that, are you?

            The whole thing is a complete non-issue in practice. Good to see 32-bit go away from development - this was eating up resources for no good reason. This should have happened several years ago!
            Last edited by brent; 01 October 2017, 07:00 AM.

            Comment


            • #36
              Originally posted by jacob View Post

              Far from it. It's 100% compatible by having an identical 32bit Protected mode plus the new Compatible mode. In those modes the performance of *32 BIT* software remains mostly the same. On the other hand 64 bit mode is by definition not compatible with anything, being brand new, and AMD clearly expected, and achieved, a huge performance boost through many improvements to the ISA. Don't forget that AMD64 was created as a response to Itanium which was supposed to be the new performance king (or so it was believed at the time).

              So AMD64 offers twice as many registers compared to old x86 (registers have a performance cost too, but 32bit x86 was notoriously register starved), it supports at long least proper IP-relative addressing with no performance impact, has SIMD out of the box and other features that make it a much more efficient platform.
              I just want to point out that there is basically like 0 performance gain from those additional GPRs. Most 32bit binaries are compiled for i686. Most 64bit binaries at least have SSE2 optimizations. And that's exactly what you are seeing I'm completely sure of it. A natively compiled 32bit binary will perform very similar to a natively compiled 64bit binary. We live age where 16GB of RAM is common and we are still stuck at 2bytes worth of GPRs... I think it's a damn shame. (And they can for damn sure no longer claim it's a transistor budget problem.)
              Last edited by duby229; 01 October 2017, 08:11 AM.

              Comment


              • #37
                Originally posted by sa666666 View Post
                It makes no sense to me when some people say that 64-bit is taking more RAM, when on a 64-bit system you're forced to have 32-bit libs around anyway. How much extra RAM is being used by having both 64-bit and 32-bit libs in RAM at the same time? Less would be used if you just moved to 64-bit entirely, even though it may be more than 32-bit individually.

                Put another way, the choice of what is in RAM is typically between the following:
                • 64-bit only system, using only 64-bit libs and apps
                • 32-bit and 64-bit system, and having multiple copies of a lot of things used

                From that POV, it's obvious that keeping 32-bit around is actually using more RAM, not less!

                And for the people that say that some apps technically don't need to be 64-bit: that may be true, but when you go to 32-bit under the assumption that you don't need 64-bit, in the long run you're using more resources than if you simply switched in the first place!

                Long story short; whether all apps need to be 64-bit is irrelevant. Keeping two architectures around and maintained is always more work than simply using just one, even if not every app actually needs the benefits of the new platform. Having an homogeneous environment gains more than any small loss you might experience in moving to 64-bit (and that's if there even is a loss).
                Both of your points are cool for enthusiasts, but couldn't work for a general populous distribution. Take Brother multi-function printers for a perfect example, They -only- release 32bit printer divers. You have no choice if you want to use their products. That's just example why multilib is so important for so many people. That's the one example I fell into, but I'm sure there are plenty of others.

                Comment


                • #38
                  Originally posted by Azrael5 View Post
                  there is no longer reason for 32bit operating systems and or 32bit programs. It's a waste of time for developers.
                  Nonsense. 8-bit and 16-bit are still alive, and 32-bit is also still alive.

                  Do you need examples? Take any of the home and small office network devices and take a look inside. They mostly run 32-bit CPUs with Linux these days. Washing machines, fridges, microwaves, etc. still use 16-bit controllers. You'll even find 16-bit on mainboards next to your 64-bit CPU or in your keyboard.

                  In short, there will always be a need for good 32-bit software and you better hope it runs Linux and not some proprietary software. Computers are found not only on or under desks. They are everywhere now and in every form and shape.

                  Now, in case of Ubuntu is this possibly a good decision. Ubuntu doesn't perform very well when compared to other distros and it even falls behind Debian in terms of performance. So hopefully will it enable Canonical to deliver a better Linux for the modern x86 desktops and servers. For the older PCs is there still Lubuntu and Debian itself available. Anyone who uses Ubuntu on 32-bit PCs will likely have issues with it already.

                  Statements like "there is no longer reason for 32bit operating systems and or 32bit programs" make the people here - us - look really dumb, like we were Democrats, who claim not voting for them puts an end to democracy. It's so bad, it hurts just to read here.
                  Last edited by sdack; 01 October 2017, 11:30 AM.

                  Comment


                  • #39
                    So explain to me why people want to use old hardware but need to use new software? If you are perfectly able and happy to use old hardware then why can't you just stay on a LTS of a 32 bit OS. Why do you need the latest greatest software if you are OK with old hardware. Sure the in the software there are features you might be missing but the same can be said for the hardware.

                    Comment


                    • #40
                      And what about the kernel itself? Is there a roadmap or plans for when they will drop 32-bit support of the kernel?

                      Comment

                      Working...
                      X