Clang OpenMP Benchmarks On Linux 64-bit Against GCC
First up are some GraphicsMagick results.
Clang OpenMP in mainline is finally working! For this Intel Xeon E5-2687W v3 Haswell system, the performance rose with OpenMP as it should, but it didn't rise by that much for the blur operation and let GCC still come out ahead.
With the sharpen task, the OpenMP-enabled binary did a lot better with Clang but GCC 4.9/5.2 was still performing better. As a reminder, to avoid any confusion, all of the CFLAGS/CXXFLAGS were maintained except for the OpenMP run when I manually added the "-fno-exceptions -fopenmp=libomp" to make the OpenMP support work out on Clang.
Hopefully we'll see more OpenMP optimizations and OMP4 enablement in time for LLVM Clang 3.8 release in early 2016.
In a future article I'll have more GCC vs. Clang OpenMP benchmarks.
With the Smallpt path-tracing benchmark that heavily utilizes OpenMP, the performance with Clang OpenMP was able to match the GCC performance!
Well, those are my initial Clang OpenMP results. Still investigating a few OpenMP-related matters. Stay tuned for more tests in future Phoronix articles along with Clang/GCC compiler benchmarks from other Linux hardware. With my daily LLVM Clang performance tracker I'll also work on adding libomp support to those multiple systems soon so they begin spitting out OpenMP-enabled Clang results.
If you enjoyed this article consider joining Phoronix Premium to view this site ad-free, multi-page articles on a single page, and other benefits. PayPal or Stripe tips are also graciously accepted. Thanks for your support.