NVIDIA官网提供四大类的帮助文档,其中本文以这四类为基础提供有可能在高性能计算上使用的library。
1. CUDA Toolkit Documentation
==========================
1.1 AmgX
AmgX提供了一个简单路径来加速对英伟达 GPU核心solver技术。它是一种高性能、以及包括柔性 state-of-the-art函数库求解器的组合系统 ,用户可以轻松地构建复杂的嵌套迭代法求解等。AmgX库提供很多优化方法,灵活地选择solver的构造方法,而且通过基于C的并行API来加速。通过使用AmgX库的method和tool,开发者能够很容易地创建指定的solver。
1.2 cuDNN
NVIDIA CUDA Deep Neural Network library(cuDNN)原始是一个为深度神经网络(deep neuralnetworks)的GPU加速库。它强调性能、易用性和低内存开销。NVIDIAcuDNN可以集成到更高级别的机器学习框架中,如加州大学伯克利分校的流行CAFFE软件。简单的,插入式设计可以让开发人员专注于设计和实现神经网络模型,而不是调整性能,同时还可以在GPU上实现高性能现代并行计算。
1.3 cuFFT
NVIDIA CUDA Fast Fourier Transform library(cuFFT) 可提供一个简单的接口,让计算 FFT的速度最高提升 10 倍。 通过利用英伟达 GPU 中数以百计的处理器核心,cuFFT让开发者无需开发自己的定制 GPU FFT 软件,即可实现 GPU 的浮点性能。
1.4 NPP
NVIDIA Performance Primitives library (NPP)是一系列 GPU 加速的图像、视频以及信号处理函数,与同级别的纯 CPU函数相比,这些函数最高可实现 5 - 10 倍性能提升。 利用 NPP,开发者能够利用 (CUDA4.1 中) 2000多个图像处理与信号处理基元,在数小时之内即可实现应用程序的大幅性能提升。
无论用 GPU 加速的版本代替 CPU 基元还是将 NPP 基元与现有的 GPU加速流水线相结合,NPP 都能够实现极高的性能,同时可缩短开发时间。
1.5 CHOLMOD
CHOLMOD是一个针对sparse Choleskyfactorization的高性能库,CHOLMOD是线性代数SuiteSparse包的一部分,在工业界和学术界已经非常普遍的使用SuiteSparse和CHOLMOD。
1.6 cuBLAS-XT
cuBLAS-XT是一款 GPU 加速版本的完整标准BLAS 库,与最新的 MKL BLAS 相比,可实现 6 - 17 倍性能提升。CULA Tools 和 MAGMA等异构 LAPACK 库是在 cuBLAS 库中 GPU