Расширение файла .cuh представляет собой специализированный формат заголовочных файлов, используемый в среде программирования NVIDIA CUDA (Compute Unified Device Architecture). По сути, это эквивалент заголовочного файла C++ для исходного кода, поддерживающего CUDA. В то время как стандартные заголовки C++ используют расширения .h или .hpp, расширение .cuh явно указывает компилятору NVIDIA CUDA (NVCC) на то, что файл содержит специфические для CUDA объявления, такие как ядра устройств (device kernels), глобальные переменные и функции хост-устройства, использующие API CUDA. Эти файлы включаются в исходные файлы .cu с помощью директивы препроцессора #include. Разделяя объявления на файлы .cuh, разработчики могут поддерживать модульность кодовой базы, совместно использовать прототипы функций в нескольких единицах трансляции и гарантировать, что компилятор корректно обрабатывает конструкции параллельных вычислений, необходимые для ускорения на GPU. Данный формат критически важен для высокопроизводительных вычислений, фреймворков глубокого обучения и научных симуляций, которые полагаются на перенос интенсивных математических вычислений с центрального процессора (CPU) на графический процессор (GPU).