2014-01-17 8 views
2

Я пытаюсь создать новый проект с Eclipse, Nsight но когда я создаю проект я получаю:Cuda Неподдерживаемой архитектура графических процессоров Eclipse, Nsight

nvcc fatal : Unsupported gpu architecture 'compute_21'. 
In build setting i use Generate GPU code 2.1. The command build that Eclipse launches is: 

Building file: ../src/prova.cu 
Invoking: NVCC Compiler 
/usr/local/cuda-5.5/bin/nvcc -G -g -O0 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21 -odir "src" -M -o "src/prova.d" "../src/prova.cu" 
/usr/local/cuda-5.5/bin/nvcc --compile -G -O0 -g -gencode arch=compute_20,code=compute_20 -gencode arch=compute_20,code=compute_21 -gencode arch=compute_20,code=sm_20 -x cu -o "src/prova.o" "../src/prova.cu" 

Если я изменить code=compute_21 с code=compute_20 У меня нет каких-либо ошибок. Как я могу изменить это в Eclipse Nsight?

+0

этот элемент должен быть 'code = sm_21' не' code = compute_21' Кажется странным, поскольку 'nsight' должен устанавливать это автоматически. Соответствующие настройки находятся в проекте ... properties..build ... cuda, где вы можете выбрать цели генерации кода. Однако, если вы каким-либо образом не настроили проект, вы не должны получать эту настройку. Возможно, вы захотите создать новый проект с нуля и посмотреть, что произойдет. –

ответ

3

арка команды определяет виртуальную архитектуры , которая будет использоваться для генерации промежуточного PTX.

код команда определяет архитектуру в реального, для которого будет сгенерирован код, либо реальный исполняемый код или PTX реального архитектуры конкретного кода.

compute_21не существует как виртуальная архитектура в обоих из них. Если вы хотите код для реального использования 21 архитектуры arch=compute_20,code=sm_21


Так что это проблема конфигурации; попробуйте с помощью мастера импорта Nsight для образцов CUDA (источник: https://devtalk.nvidia.com/default/topic/490324/issue-with-gencode-and-compute_21-results-in-unsupported-gpu-architecture/) и проверьте, не устранена ли проблема.

+0

Все верно, но это не объясняет, как nsight подходит к этим значениям. 'compute_21' не является выбираемой установкой в ​​nsight. При использовании nsight EE пользователь обычно не набирает эти строки. –

+0

Согласен, изменяя еще несколько советов –

+0

Я не могу найти ссылку на мастер импорта Nsight в указанной вами ссылке, кроме того, эта функция импорта является релевантной для образца cuda, у которого уже будет установлен make-файл. Если что-либо, использование мастера импорта с загроможденным make-файлом * может * привести вас в проблему, описанную здесь. –

0

Я установил новейший инструментарий CUDA для Fedora 19 (cuda_5.5.22_linux_64.run) и испытал ту же проблему.

Я думаю, проблема в том, что я изменил местоположение установки по умолчанию. После переустановки инструментария CUDA в местоположении по умолчанию (/usr/local/cuda-5.5) и удаления каталога cuda-workspace, чтобы Eclipse Nsight воссоздал его, проблема исчезла.

Смежные вопросы