CUDA工具包文档-第9.0.176版(较老的)-上次更新日期:2018年6月21日-发送反馈

CUDA工具包文档第9.0.176版


发行说明
CUDA工具包的发行说明。
EULA协议
NVIDIA CUDA的最终用户许可协议工具包、NVIDIA CUDA示例、NVIIDA显示驱动程序和NVIDIA-NSight(Visual Studio Edition)。

安装指南


快速入门指南
本指南提供了在标准系统上安装和验证CUDA的基本第一步说明。
安装指南窗口
本指南讨论如何在Microsoft Windows系统上安装和检查CUDA开发工具的正确操作。
Mac OS X安装指南
本指南讨论如何在Mac OS X系统上安装和检查CUDA开发工具的正确操作。
Linux安装指南
本指南讨论如何在GNU/Linux系统上安装和检查CUDA开发工具的正确操作。

编程指南


编程指南
本指南详细讨论了CUDA编程模型和编程接口。然后描述硬件实现,并提供如何实现的指导最大性能。附录中列出了所有启用CUDA的设备,C语言所有扩展的详细描述,支持的数学函数列表,中支持的C++功能主机和设备代码,纹理获取的详细信息,技术各种设备的规格,并通过介绍低级驱动程序API。
最佳实践指南
本指南介绍了已建立的并行化和优化技术及编码解释隐喻和习语可以极大地简化支持CUDA的GPU体系结构。其目的是为使用CUDA从NVIDIA GPU获得最佳性能工具包。
麦克斯韦兼容性指南
本应用说明旨在帮助开发商确保其NVIDIA CUDA应用程序能够运行在基于NVIDIA Maxwell架构的GPU上正确运行。这个文档提供了指导,以确保您的软件应用程序与Maxwell兼容。
Pascal兼容性指南
本应用说明旨在帮助开发商确保其NVIDIA CUDA应用程序能够运行基于NVIDIA Pascal架构的GPU。这个文档提供了指导,以确保您的软件应用程序与Pascal兼容。
Volta兼容性指南
本应用说明旨在帮助开发商确保其NVIDIA CUDA应用程序能够运行正确安装在基于NVIDIA Volta架构的GPU上。这个文档提供了指导,以确保您的软件应用程序与Volta兼容。
开普勒调优指南
开普勒是NVIDIA的第三代CUDA计算应用程序的体系结构。接下来的应用程序费米体系结构的最佳实践通常应该查看开普勒架构的加速功能,无需更改任何代码。这个指南总结了应用程序可以进行微调以获得的方法通过利用开普勒体系结构功能实现额外的加速。
麦克斯韦调谐指南
麦克斯韦是NVIDIA的第四代CUDA计算应用程序的体系结构。以下应用程序开普勒体系结构的最佳实践通常应该看到在没有任何代码更改的情况下,加快了Maxwell体系结构的速度。这个指南总结了应用程序可以进行微调以获得的方法通过利用Maxwell体系结构功能实现额外的加速。
Pascal调谐指南
帕斯卡是NVIDIA的第五代CUDA计算应用程序的体系结构。以下应用程序Maxwell体系结构的最佳实践通常应该看到在没有任何代码更改的情况下,加快了Pascal体系结构的速度。这个指南总结了应用程序可以进行微调以获得的方法通过利用Pascal体系结构功能实现额外的加速。
Volta调谐指南
沃尔特是NVIDIA的第六代CUDA计算应用程序的体系结构。以下应用程序Pascal体系结构的最佳实践通常应该看到在没有任何代码更改的情况下,加快了Volta架构的速度。这个指南总结了应用程序可以进行微调以获得的方法通过利用Volta体系结构功能实现额外的加速。
PTX ISA公司
本指南提供了有关使用PTX,一个低级并行线程执行虚拟机和指令集体系结构(ISA)。PTX将GPU暴露为数据并行计算设备。
Optimus开发者指南
本文档解释了如何使用CUDA API查询NVIDIA Optimus系统中的GPU功能。
视频解码器
NVIDIA视频解码器(NVCUVID)已弃用。相反,请使用NVIDIA视频编解码器SDK(https://developer.nvidia.com/nvidia-video-codec-sdk).
PTX互操作性
本文档介绍如何编写PTX,即符合ABI并可与其他CUDA代码互操作。
嵌入式PTX组件
本文档显示了如何内联PTX(并行线程执行)将语言语句汇编为CUDA代码。描述可用的汇编语句参数和约束,以及该文档还提供了一些您可能会遇到的陷阱列表遭遇。

CUDA API参考


CUDA运行时API
CUDA运行时API。
CUDA驱动程序API
CUDA驱动程序API。
CUDA数学API
CUDA数学API。
cuBLAS公司
cuBLAS库是在NVIDIA CUDA运行时之上实现的BLAS(基本线性代数子程序)。它允许用户可以访问NVIDIA图形处理单元(GPU)的计算资源,但不能在多个GPU。
NVBLAS公司
NVBLAS库是一个基于NVIDIA的多GPU加速的嵌入式BLAS(基本线性代数子程序)cuBLAS图书馆。
袖口
cuFFT库用户指南。
nvGRAPH公司
nvGRAPH库用户指南。
cuRAND公司
cuRAND库用户指南。
cuSPARSE公司
cuSPARSE库用户指南。
核电站
NVIDIA NPP是一个功能库,用于执行CUDA加速处理。库中的初始功能集中于图像和视频处理,广泛适用于这些区域。NPP将随着时间的推移而发展,以包含更多的计算各种问题领域的繁重任务。编写NPP库最大限度地提高灵活性,同时保持高性能。
NVRTC(运行时编译)
NVRTC是CUDA C++的运行时编译库。它接受字符串形式的CUDA C++源代码,并创建可用于获取PTX的手柄。NVRTC生成的PTX字符串可以通过cuModuleLoadData和cuModuleLoadDataEx,并通过的cuLinkAddData与其他模块链接CUDA驱动程序API。此功能通常可以提供优化和性能可以在纯脱机静态编译中进行。
推力
推力入门指南。
cuSOLVER公司
cuSOLVER库用户指南。

其他


CUDA样本
本文档包含以下代码示例的完整列表包含在NVIDIA CUDA工具包中。它描述了每个代码示例,列出了最低GPU规范,并提供了到源代码的链接代码和白皮书(如果可用)。
CUDA演示套件
本文档介绍CUDA demo Suite附带的演示应用程序。
CUPTI公司
CUPTI API。
调试器API
CUDA调试器API。
GPU直接RDMA
开普勒级GPU和CUDA 5.0中引入的技术,为GPU和第三方对等机之间的通信启用直接路径当设备共享同一上游时,PCI Express总线上的设备根复合体使用PCI Express的标准功能。本文件介绍了该技术并描述了启用GPUDirect RDMA连接到Linux设备中的NVIDIA GPU驾驶员模型。

工具


NVCC公司
本文档是关于nvcc使用的参考指南,CUDA编译器驱动程序。nvcc接受一系列常规编译器选项,例如,用于定义宏和include/library路径,以及用于指导编译过程。
CUDA-GDB公司
NVIDIA工具用于调试运行在Linux和Mac上的CUDA应用程序,为开发人员提供了一种调试机制CUDA应用程序在实际硬件上运行。CUDA-GDB是GDB(GNU项目调试器)的x86-64端口的扩展。
梅奇克CUDA-MEMCHECK
CUDA-MEMCHECK是一套能够精确检测越界和未对齐的内存访问错误,检查设备分配泄漏、报告硬件错误和识别共享内存数据进入危险。
Nsight Eclipse版
Nsight Eclipse Edition入门指南
Nsight Eclipse插件安装指南
Nsight Eclipse插件安装指南
探查器
这是探查器指南。
CUDA二进制实用程序
cuobjdump、nvdissm和nvprune的应用程序注释。
GPU库顾问
NVIDIA GPU Library Advisor的应用说明。

白皮书


浮点与IEEE 754
与浮点精度和合规性相关的一些问题包括CPU和GPU上的常见混淆源。这个的目的白皮书旨在讨论与NVIDIA GPU相关的最常见问题并补充CUDA C编程指南中的文档。
不完全LU和Cholesky预条件迭代方法
在本白皮书中,我们展示了如何使用cuSPARSE和cuBLAS库在不完全LU和Cholesky预处理迭代方法。我们专注于双共轭梯度稳定和共轭梯度迭代方法,可用于解决大型稀疏非对称和对称正定线性系统。此外,我们关于并行稀疏三角形解的一个基本问题这些算法中的构建块。

编译器SDK


libNVVM API
libNVVM API。
libdevice用户指南
libdevice库是LLVM位代码库实现GPU内核的通用函数。
NVVM红外
NVVM IR是编译器IR(内部表示)。NVVM IR设计用于表示GPU计算内核(例如CUDA内核)。高级与CUDA C编译器前端一样,语言front-ens可以生成NVVM红外。