Floating Point: NAMD

After quite a bit of trouble, we managed to port a real floating point application to our POWER8 system: NAMD.

Developed by the Theoretical and Computational Biophysics Group at the University of Illinois Urbana-Champaign, NAMD is a set of parallel molecular dynamics codes for extreme parallellization on thousands of cores. NAMD is also part of SPEC CPU2006 FP.

We used the "NAMD_2.10_Linux-x86_64-multicore" binary for our Xeons. Since there was no LE Linux version for POWER8, we built our own. We got it working with the g++ compiler and used these settings:

-O3 -mcpu=power8 -ftree-vectorize -mpopcntd

These setting should push GCC to generate as much VSX (Vector Scalar eXtenstion) code as possible. We used the most popular benchmark load, apoa1 (Apolipoprotein A1). The results are expressed in simulated nanoseconds per wall-clock day.

NAMD molecular dynamics

To put this in perspective: an early Xeon Phi (7120 1.2 GHz) scores about 4.4, A top NVIDIA GPU with CUDA based NAMD can score up to 20 and more. So it is clear that this kind of software will be run mostly on GPU accelerated servers.

But it is nonetheless a real world HPC benchmark. The IBM POWER8 is once again on par with the Xeon E5-2695v3. The NAMD binary does not seem to leverage AVX2, as the Xeon E5-2667 (16 cores) does not outperform the Xeon E5-2690 (AVX) with a large margin.

Floating Point & Compilers Database Performance: MySQL
Comments Locked

146 Comments

View All Comments

  • joegee - Thursday, November 19, 2015 - link

    It was an awesome community. I learned so much from everyone. I remember the days when we'd write pages arguing whether AMD's new 64 bit extension to x86 was truly 64 bit. The discussions could be heated, but they were seldom rude. I wish there were something similar today. :/
  • Kevin G - Saturday, November 7, 2015 - link

    Aces brings back memories for me as well even though I mainly lurked there.

    A solid chunk of that group have moved over to RWT.
  • joegee - Thursday, November 19, 2015 - link

    What is RWT?
  • psychobriggsy - Friday, November 6, 2015 - link

    Get back to Aces Hardware you!
  • JohanAnandtech - Saturday, November 7, 2015 - link

    Like Ryan said, I have been working 11 years at Anand. In other words, it is great working at Anandtech. AT is one of the few tech sites out there that still values deep analysis and allows the editors to take the time to delve deep.
  • joegee - Friday, November 6, 2015 - link

    And still writing as well as you ever did! Keep up the good work, Johan!
  • rrossi - Saturday, November 7, 2015 - link

    Dear Johan nice article. Did u ever consider sparse system solving (with preconditioning) as a sensitive benchmark? It is a crucial stage of most scientific applications and it is a bandwidth limited operation with a high degree of parallelism. It would be definitely interesting to see how the power 8 fares on such a test. If you are interested I think I could provide a pointer to a simple benchmark (to be compiled). If you feel it may be interesting just drop me an email.
  • JohanAnandtech - Saturday, November 7, 2015 - link

    Interested... mail me, I don't have your mail. See the author link on top of the article.
  • Ian Cutress - Saturday, November 7, 2015 - link

    I'd also like to be pointed to such a benchmark for workstation style tests on x86. Please email ian@anandtech.com with info :)
  • MartinT - Friday, November 6, 2015 - link

    Johan's been with Anandtech for more than a decade, and has been publishing on the subject since the late 90s.

    But I very much second your "Niiiiice!," as reading his name always reminds me of the old days over at aceshardware, and I'm always looking forward to his insights!

Log in

Don't have an account? Sign up now