The programming glue between the legacy source
and hardware-accelerated compute kernels
Portability
Preserve the legacy code
Keep independent from the hardware
platform
Do not lock to a vendor specific API
Provide interoperability
Work with any C and Fortran
optimizing compilers
HMPP™ platform enables developers to easily and rapidly integrate hardware accelerators to build powerful manycore applications.
HMPP™ gives programmers a
simple, flexible and portable interface
for developing parallel applications
whose critical computations are
distributed over specialized and
heterogeneous cores.
By insulating hardware specific versions of functions from the native application source, HMPP™ preserves the legacy code, keeps the application independent from fast changing hardware platforms and offers interoperability.
The concept of HMPP is to integrate the use of hardware accelerators rather than porting the application to make use of them. The hardware specific versions of the computations to be offloaded on an accelerator are dissociated from the original application source code.
The HMPP toolkit is a set of compiler directives, tools and software runtime that supports multi-core processor parallel programming in C and Fortran on Unix platforms.
The directives allow to declare functions, named codelets, which are suitable for hardware acceleration. They also specify the conditional execution of the codelets, their desired synchronous or asynchronous property and the data transfers.
A HMPP application is compiled with an off-the-shelf compiler and, thanks to its dynamic linking mechanism, it is able to make use of either new accelerators or improved codelets without having to recompile the application.
Distribute computation between CPU
and accelerators
Integrate with Open MP and MPI
Scalability
Leverage the computing power of GPUs and FPGAs co-processors
Copyright © 2008 CAPS entreprise. All rights reserved.