64bit performance on Atom
Posted by XtoF at March 14th, 2013
Lately, I reinstalled Linux on the netbook I use to check the validity of EZWebGallery’s packages. Even if its CPU is a puny 1.5GHz Atom, it supports the AMD64 instructions set so I wondered if there would be any benefit in installing the 64bit flavor of Ubuntu. Had my computer hosted a more beefed-up CPU, I would not have hesitated any second, as the advantage of a 64 bit OS are numerous. But I remember a time when running Windows NT on an original Pentium (P54c) was suboptimal as it was optimized to run 16bit code.
So is the small Atom up to the task of running 64bit softwares ?
Googling a little bit did not bring me a clear answer as most of the benchmarks I found were not Atom specific (an exception). So I decided that I would perform my own very limited benchmark by running some Javascript benches on a clean Ubuntu 12.10.
Before giving the numbers, here is what I expected from the Atom architecture’s ability to run 64bit code:
On the plus side:
- More general purpose register (16 instead of 8) are said to generally improve speed by around 5-10%.
- Floating point code should execute faster as SSE2 is mandatory to AMD64 and more efficient than old x87 code.
- The 64bit version of the GNU libraries are said to be better optimized than their 32bit counterpart.
On the minus side:
- The Atom is heavily constrained by its memory bandwidth, which rely on a single DDR canal. Furthermore, it only has an instruction fetching rate of 8 bytes / cycle. As 64bit code doubles pointers size, any pointer heavy function could suffer greatly!
Bench set-up
- Samsung NF-310 netbook – Atom N550@1.5GHz, dual core – 2GB DDR3@1333 – SSD Samsung 840pro
- Browser: Firefox 19.02
- Ubuntu 12.10
Results
As you can see, every bench ran in 64bit is slower than its 32bit counterpart! How can it be? Well, it appears that running Javascript benches was not very representative as Javascript engines, specially the modern ones based on JIT, make heavy use of pointers… The worst case scenario for an Atom!
So, being a worst case scenario, these benchs leave us with few relevant info, except the fact that pointer heavy 64 bit software don’t play nice on Atoms. Is this true only on this architecture, which is so bandwidth and decoding limited that it starves too easily? Or are all 64 bit processors performing badly in Javascript testings?

Category: Various Rants
Leave a Reply