В API времени выполнения cudaGetDeviceProperties возвращает два поля major
и minor
, которые возвращают вычислительные возможности любого заданного перечисленного устройства CUDA.Вы можете использовать это для анализа вычислительных возможностей любого графического процессора перед установкой контекста на нем, чтобы убедиться, что это правильная архитектура для того, что делает ваш код.nvcc
может сгенерировать объектный файл, содержащий несколько архитектур, из одного вызова, используя опцию -gencode
, например:
nvcc -c -gencode arch=compute_20,code=sm_20 \
-gencode arch=compute_13,code=sm_13 \
source.cu
создаст выходной объектный файл со встроенным толстым двоичным объектом, содержащим кубин-файлы для GT200и карты GF100.API времени выполнения автоматически обработает обнаружение архитектуры и попытается загрузить подходящий код устройства из объекта fatbinary без дополнительного кода хоста.