Open64 5.0 Compiler Released w/ New Features

Written by Michael Larabel in Programming on 10 November 2011 at 07:31 AM EST. 8 Comments
PROGRAMMING
Open64, the open-source (GPLv2-licensed) compiler for C/C++ and Fortran that's backed by AMD and has been developed by SGI, HP, and various universities and research organizations, has reached a major milestone today. Version 5.0 of Open64 has been christened with many changes.

Open64 may not be as common as GCC -- or these days as popular as LLVM/Clang -- but it's been around for a decade and is still seeing new adoption and is playing important roles within AMD, NVIDIA, Hewlett-Packard, and many research organizations. The Open64 5.0 release announcement describes the major changes in this new version as offering performance improvements, new optimizations, infrastructure changes, and bug-fixes. Open64 is officially supported on i386, x86_64, and IA-64 architectures.

At a lower level, some of the specific changes I've spotted in Open64 5.0 worth pointing out includes extended intrinsic support for IA-64, improved -O3 floating point performance, improved vectorization, extended proactive loop optimizations, frame-pointer optimizations, and several other compiler optimizations. There's also improved support for code generation for SSE4, AVX, and FMA instruction sets. This will benefit the AMD Bulldozer CPUs such as the AMD FX-8150.

Other items in Open64 5.0 include "comprehensive support and tuning for the Bulldozer processor", improved register pressure-based scheduling, and a best-fit loop unrolling algorithm. The GCC3 front-end has also been deprecated along with the IRIX support, which will be gutted out after this 5.0 release.

For those that may be wondering why use Open64 over GCC, for certain cases the binaries produced by Open64 can be faster than the GNU Compiler Collection. Most of the performance improvements are for AMD hardware. AMD also maintains their branch of the Open64 compiler, which will likely be updated to version 5.0 in the near future. Open64 is also GPLv2 licensed where as GCC is with the GPLv3, which has upset some companies that otherwise like the de facto GNU compiler.

Recently I carried out some GCC, LLVM/Clang, and Open64 compiler benchmarks and Open64 compiler tuning for Bulldozer, but with the 5.0 release of Open64, new benchmarks from Bulldozer and other processors will be on my agenda.

The Open64 5.0 release comes just weeks after the Bulldozer launch and at a time when GCC 4.7 is under active development with a planned release in March or April. The Apple crew is also preparing to release LLVM/Clang 3.0 next week, which also offers up many improvements and has already been the focus of several articles.

Here is the Open64 5.0 release announcement, but it's not really useful, so if you want to grab this new open-source compiler release just drop by Open64.net.

While downloading Open64 5.0, be sure to check out the 14-way NVIDIA vs. Nouveau driver and hardware comparison.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week