NPP 1.0 available

NVIDIA is pleased to announce the release of version 1.0 of the NVIDIA Performance Primitives (NPP) library.

Performance primitives are foundational building blocks for performing GPU accelerated processing. The initial set of functionality in the library focuses on functions for imaging and video processing and is widely applicable for developers in these areas. The NPP library is written to maximize flexibility, while maintaining high performance.

NPP can be easily integrated into existing applications and allows developers to take advantage of GPU acceleration without having to write code for the GPU.

The functions contained in this version span fundamental operations such as add, multiply and divide to advanced operations such as perspective warps, discrete cosine transformation, histogram and Canny filtering.

The library currently supports Linux 32/64, Windows 32/64 and Mac OS and is available at

Please note that the Linux version of this release has been tested on only CentOS 4.7 but is expected to run on other distros as well.

Besides the typos in the documentation (eg: ‘piexel’ under the Mean_StdDev description), and the fact it’s for the Runtime API (and CUDA 3.0 isn’t official yet) - nice! :)

Should be interesting to compare the performance of our own internal versions of those algorithms, and NPP’s (once CUDA 3.0 is out).

Oh, nppiWarpAffine_8u_C1R and the likes don’t seem to be under the “NPP Image Processing” module for some reason… for those looking for that doco, make sure to look at file-level documentation for nppi.h


Is there a way to use NPP from python?


pyCUDA or numba/numba pro should make it fairly easy to call npp library routines.