.cuh 文件扩展名是一种专门用于 NVIDIA CUDA(统一计算设备架构)编程环境的头文件格式。它本质上是 CUDA 源代码对应的 C++ 头文件。虽然标准的 C++ 头文件通常使用 .h 或 .hpp 扩展名,但 .cuh 扩展名用于明确告知 NVIDIA CUDA 编译器 (NVCC),该文件包含 CUDA 特有的声明,例如设备内核 (device kernels)、全局变量以及使用 CUDA API 的主机-设备函数 (host-device functions)。这些文件通过预处理指令 #include 被包含在 .cu 源代码文件中。通过将声明分离到 .cuh 文件中,开发人员可以维护模块化的代码库,在多个翻译单元之间共享函数原型,并确保编译器能够正确处理 GPU 加速所需的并行计算结构。这种格式对于依赖于将密集型数学计算从 CPU 卸载到 GPU 的高性能计算、深度学习框架和科学模拟至关重要。