Я хочу использовать репозиторий ThunderKittens в своем проекте C++, в частности, для включения заголовочного файла котят.cuh. Я клонировал репозиторий, но не знаю, как настроить проект CMake для его правильной интеграции. Я хочу, чтобы следующий код работал:
#include "kittens.cuh"
Я добавил следующий код в cmake:
include_directories(tensor "D:\\Code\\Cpp\\tensor\\ThunderKittens\\include")
Но код не запускается:
Error limit reached.
100 errors detected in the compilation of "D:/Code/Cpp/tensor/main.cu".
Compilation terminated.
main.cu
ninja: build stopped: subcommand failed.
Ниже приведен минимальный воспроизводимый пример:
cmake:
cmake_minimum_required(VERSION 3.18 FATAL_ERROR)
project(tensor LANGUAGES CXX C CUDA)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${TORCH_CXX_FLAGS}")
set(DCMAKE_CUDA_COMPIRLER "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.1\\bin\nvcc.exe")
add_executable(tensor main.cu)
include_directories(tensor "D:\\Code\\Cpp\\tensor\\ThunderKittens\\include")
set_property(TARGET tensor PROPERTY CXX_STANDARD 20)
main.cu
#include
int main() {
return 0;
}
Ошибки очень длинные, первые пять из них показаны здесь:
D:\Code\Cpp\tensor\ThunderKittens\include\common\base_types.cuh(47): error: identifier "concept" is undefined
concept T2 = std::is_same_v || std::is_same_v || std::is_same_v;
^
D:\Code\Cpp\tensor\ThunderKittens\include\common\base_types.cuh(49): error: identifier "concept" is undefined
concept T1 = std::is_same_v || std::is_same_v || std::is_same_v;
^
D:\Code\Cpp\tensor\ThunderKittens\include\common\base_types.cuh(95): error: namespace "std" has no member "bit_cast"
static __declspec(__device__) inline constexpr bf16 zero() { return std::bit_cast(uint16_t(0x0000)); }
^
D:\Code\Cpp\tensor\ThunderKittens\include\common\base_types.cuh(95): error: type name is not allowed
static __declspec(__device__) inline constexpr bf16 zero() { return std::bit_cast(uint16_t(0x0000)); }
^
D:\Code\Cpp\tensor\ThunderKittens\include\common\base_types.cuh(96): error: namespace "std" has no member "bit_cast"
static __declspec(__device__) inline constexpr bf16 one() { return std::bit_cast(uint16_t(0x3F80)); }
Подробнее здесь: https://stackoverflow.com/questions/791 ... de-kittens
Как импортировать ThunderKittens в мой проект C++ cmake и заставить #include "kittens.cuh" работать? ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Фатальная ошибка: include/chrono: Нет такого файла или каталога 14 | #include <хроно>
Anonymous » » в форуме C++ - 0 Ответы
- 98 Просмотры
-
Последнее сообщение Anonymous
-