-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
NVIDIA Performance Primitives (NPP) Library and SDK
Version 3.2
README.TXT
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
September 2010
Copyright (C) 2010 NVIDIA Corp.

This distribution contains
--------------------------
- NVIDIA NPP Library
- NVIDIA NPP Documentation (HTML)
- NVIDIA NPP SDK

Please see the release notes (RELEASE_NOTES.TXT) for detailed
information about this release.


Documentation (located in the doc directory)
--------------------------
  Access the root documentation files doc/index.html

Important Files and Directories
-------------------------------
common/npp/lib/     NPP stub libs (Windows).
    npp.lib             NPP stub-library file. Naming of this varies from 
                        platform to platform.
common/npp/bin/     NPP windows binaries
    npp32_32_16.dll     Dynamic library for 32-bit Windows.
    npp64_32_16.dll     Dynamic library for 64-bit Windows.
	
common/npp/lib/     NPP libraries (Linux).
    libnpp32.so.3.2.16  NPP 32-bit dynamic library.
    libnpp64.so.3.2.16  NPP 64-bit dynamic library.

common/npp/lib/     NPP libraries (Mac OSX).
    libnpp32.3.2.dylib  NPP 32-bit dynamic library. 
    libnpp64.3.2.dylib  NPP 64-bit dynamic library. 

common/npp/include/ NPP header files.
    npp.h               Master NPP include file. This file pulls in all
                        other NPP header files.
    nppcore.h           Basic NPP library functions (library version, etc.).
    nppdefs.h           Common NPP type definitions and enumerations.
    nppi.h              NPP image-processing functions.
    nppversion.h        Defines of the library version.
	
common/npp/doc/     NPP documentation
    NPP_Library_3_2.pdf PDF version of the NPP documentation 
    html/index.html     HTML file at the root of the documentation
                        hyper-text.

data/               Data used in the sample programs.
    Lena.pgm            Lena image in PGM format. This file is used by the
                        SDK samples as default input.

samples/            SDK sample programs/projects are under this directory.


Installation
------------
Developers are free to move the NPP header files, dynamic libraries (Mac, Linux)
or DLLs and stub-libs (Windows) to a suitable location in their build trees.

Developers that include from and link to default CUDA Toolkit installations using
the 

    CUDA_BIN_PATH
    CUDA_INC_PATH
    CUDA_LIB_PATH

environment variables, might want to consider copying the respictive NPP files
into the locations provided by those path variables. I.e.

common/npp/bin       -> CUDA_BIN_PATH (Windows only)
common/npp/lib       -> CUDA_LIB_PATH
common/npp/include   -> CUDA_INC_PATH


Supported NVIDIA Hardware
--------------------------
NPP runs on all CUDA capable NVIDIA hardware. For details please see
    http://www.nvidia.com/object/cuda_learn_products.html


Supported Software Platforms
--------------------------
32-bit operating systems
- Windows XP
- Windows Vista
- Windows Win7
- Linux Cent OS 4.7
- Linux Ubuntu 8.10
- Linux Ubuntu 9.04
- Mac OS X 10.5.2+
- Mac OS X 10.6+

64-bit operating systems
- Windows XP (64-bit)
- Windows Vista (64-bit)
- Windows Win7 (64-bit)
- Linux Cent OS 4.7
- Linux Ubuntu 8.10
- Linux Ubuntu 9.04
- Mac OS X 10.6+


Additional Dependencies
-----------------------
NPP is based on the CUDA Runtime API Version 3.2. Developing software with NPP,
requires a CUDA 3.2 compatible driver, and the CUDA 3.2 toolkit.


Deployment of NPP Based Applications
------------------------------------
The deployment/distribution of SW developed using NPP requires the
redistribution of the CUDA runtime DLL (e.g. cudart32/64_32_16.dll for Windows)
from the CUDA installation directory and the NPP DLL (e.g. npp32/64_32_16.dll
for Windows). These dynamic libraries need to be in the search path of the OS's
dynamic linker.
