CAPS has announced a new 2.4 release of its HMPP hybrid compiler, supporting a much wider range of operating systems and compilers for Linux and Windows.
Based on GPU programming and tuning directives, HMPP offers an incremental programming model that allows developers with different levels of expertise to fully exploit GPU hardware accelerators in their legacy code.
With the last generation of GPU, performance gain can be improved by executing several kernels on a same GPU. In its latest 2.4 version, HMPP includes this feature at source code level providing a support to allocate different groups or codelets on a same device, which generates new opportunities with the latest hardware architectures
Before 2.4 release, HMPP programmers needed to explicitly declare the input/output status of each variable used in a HMPP region. HMPP 2.4 adds region programming simplification by providing an automatic detection of these data intents (in and inout).
HMPP 2.4 also eases CPU-GPU data coherence management by providing an automatic data transfer mode. This mode handles the needs of codelet argument transfer according to the computations done on the CPU or on the GPU.
HMPP 2.4 is the first version which officially brings a support for hybrid computation on Microsoft Windows system. Through the use of the Visual Studio 2008 IDE, HMPP is now available on Microsoft Windows HPC Server 2008 and Windows 7. CAPS is thus extending HMPP capabilities to a much broader audience of technical computing users.
Moreover, Eclipse being a widely used, open-source, integrated development environment (IDE), which provides a highly integrated environment designed for the development of parallel applications, CAPS decided to provide in HMPP 2.4 an Eclipse plugin providing miscellaneous views and online documentation.