"Per Core" Integer Performance: 7-Zip

The profile of a compression algorithm is somewhat similar to many server workloads: it can be hard to extract instruction level parallelism (ILP) and it's sensitive to memory parallelism and latency. The instruction mix is a bit different, but it's still somewhat similar to many server workloads. Testing single threaded is also a great way to check how well the turbo boost feature works in a CPU.

We ran this benchmark on the POWER8 a few months ago, but there are several reasons to do this again. First of all, we can now use GCC 4.9.2, which has specific support for POWER8 (-mcpu=power8). It is good to note that POWER8 is not a radical new design compared to POWER7. So we only expect modest gains from the compiler.

Secondly, last time we ran on top of PowerKVM, inside a virtual machine. Although that should not make a big difference either - as the benchmark runs almost completely (99%) in user modus and thus runs at 100% - it's still worthwhle to rule out the influence of the virtual machine.

So we recompiled the 7-Zip source code on every machine with the -O3 optimization with GCC 4.9.2.

LZMA per core Performance: Compression

It is important to note that Intel is extremely aggressive with Turbo-boost on the Xeon E5-2699v3. Running code on one core causes the 2.3 GHz Xeon to boost to 3.6 GHz. As a result, the typical clockspeed advantage of the POWER8 was minimized to a measly 90 MHz, with the POWER8 CPUs boosting from 3.425 GHz to 3.690 GHz.

We found that the POWER8 needs more than one thread to deliver good performance: with one thread we only achieve 62% of the performance of a Haswell core at the same speed. Using the mcpu=power8 compiler flag did little more than boost the performance by 1-3%, which is within the margin of error of this benchmark. So your (occassional?) single threaded code will fare badly on POWER8.

Once you fire off 8 threads however, the POWER8 CPU outperforms the hyperthreaded Haswell core slightly (4%).

How about decompression which is even more (IPC) unfriendly to our brainiacs?

LZMA per core Performance: DeCompression

With a single thread, performance of a POWER8 core is about 25% slower than a Haswell core. The Haswell core is still clearly better in extracting Instruction Level Parallelism out of this ILP-unfriendly code. However, let there be no mistake about the integer crunching power of POWER8: it delivers 35% higher performance than the hyperthreaded Xeon E5, core per core, clock per clock (give or take a few MHz).

Compression depends more on the datacache and OoO engine. It is remarkable that the Haswell core with its smaller L1-datacache does a lot better than the POWER8. The many unpredictable branches of the decompression code underutilize these very wide modern cores, and as a result the SMT-8 capable POWER8 outperforms the dual-threaded (SMT-2) Haswell. Notice that running two threads instead one thread on the POWER8 offers 61% better performance. Running 8 threads delivers 2.4x higher performance, a clear indication that the POWER8 CPU has a very wide integer execution engine, but can only deliver if enough threads are active.

Benchmark Configuration and Methodology Multi-Threaded Integer Performance
Comments Locked

146 Comments

View All Comments

  • JohanAnandtech - Wednesday, November 11, 2015 - link

    I did not know you used 7500x3500, my testing was inspired on what the rest of the benchmarking community (Phoronix, Serverthehome) was using (obviously, 1024x768 is too small for current servers).

    http://www.anandtech.com/show/9567/the-power-8-rev...
    This answers your question about threads, right?
  • JohanAnandtech - Wednesday, November 11, 2015 - link

    Oh yes, changed the link. Thanks for the feedback!
  • mapesdhs - Thursday, November 12, 2015 - link

    Most welcome! And I really should move the more complex tests to the top of the page...

    Oh, my wording about threads was not what I'd intended. What I meant was, the no. of threads being larger than the supported no. of hardware threads. Thus, for a 12-core Power8 with 8 threads per core, try using 192 or 384 threads, instead of just the nominal 96 one might assume would make sense.

    Ian.
  • MB13 - Wednesday, November 11, 2015 - link

    POWER8 is full of innovation and brings change! An S812LC only costs $6,595 from IBM's external website! http://www-03.ibm.com/systems/power/hardware/s812l...

    The Power scale out boxes will save on your running and software costs as you can reduce your software licensing and server footprint.

    With the OpenPOWER Foundation, you now have companies such as Tyan and Wistron who also create their own POWER8 servers and sell them independently of IBM. If you have not looked at The OpenPOWER Foundation and the innovation it brings through community and collaboration, your missing out big time!

    There is change! Don't get left behind!
  • MB13 - Wednesday, November 11, 2015 - link

    and don't forget - POWER8 runs Little Endian and support the latest versions of RedHat, SUSE and Ubuntu!
    The OpenPOWER servers are Linux only!
  • Gasaraki88 - Wednesday, November 11, 2015 - link

    It's funny how this article is trying to "sell" me the system but I'm still not impressed. Costs more, less performance, and uses more power at idle and load than the Intel system.
  • nils_ - Thursday, November 12, 2015 - link

    What I found the most off putting is that you have to do a lot of work to get some things running with Linux. That's a big cost factor.
  • nils_ - Thursday, November 12, 2015 - link

    Having a lot of software that isn't really well ported is probably going to remain a problem for Power8 for years to come since so few people have access to these kinds of systems and the cost is prohibitive. The great thing with x86 and ARM is that you can use it at home/work pretty easily without shelling out a lot of money. On x86 you can be sure if your software builds locally and runs locally it will also run on your server.
  • svj - Thursday, November 12, 2015 - link

    Well written articles.

    1. I submit that the headline is misleading. Intel x86 does not compete with POWER at the high end. POWER L & LC line of servers are comparable to x86 based servers. IBM POWER is taking the battle to Intel's home turf.
    2. The analysis leaves out cost of SW. Many organizations use commercial software which are priced per core. If POWER can do with 10 cores what Intel does with 18 cores, that means HUGE savings.
    3. OPEN POWER is a huge move. I think the market will start seeing the results soon.
  • alpha754293 - Thursday, November 12, 2015 - link

    An excellent review as always Johan. (haha...to zeeBomb. It is my understanding that Johan doesn't post probably as often as he might have otherwise like to because testing servers/enterprise computing solutions takes a LOT longer than testing/benching consumer-level systems. Some of the HPC applications that I run takes hours to days for each run, so when you're running it, you're running those tests over and over again, and before you know it, a month has gone by (or you've ran out of time with the system) or you have to purposely cut it short so that you can test a variety of software.)

    It's unfortunate that IBM never ported AIX to x86 (unlike Solaris.) I think that there would be more people trying to get into it if the cost of entry (even just to learn) isn't so high. I've looked at getting an old POWER4 system before for that purpose, but by then, the systems are so old and slow that it's like "what's the point?" I think that IBM is literally pricing themselves into extinction (along with their entire hardware/software ecosystem). Unfortunately for many businesses, AIX POWER servers still run their mainframe/backend which means that if you want to get paid $100k+ outta college - go learn AIX on POWER. As the current generation of sysadmins are starting to age and retire out, and they're going to have a hard time finding qualified people, the only way eventually would be that they would have to pay top dollar just to attract people into the field. (Unless they decide to move everything over to the x86/Xeon/Linux world. But for some mainframes (like financial institutions), that's DEFINITELY easier said than don).

Log in

Don't have an account? Sign up now