Я скачал тяги 1.70 и 1.60 от тяги страница интернета в мой домашний каталог, /home/me/project/thrust
, Когда я пытаюсь запустить пример ниже, используя gcc -c -I/home/me/project thrust_1_example.cpp
Я получил сообщения об ошибке, что заголовочные файлы не найдены: In file included from /home/me/project/thrust/detail/config.h:22,
from /home/me/project/thrust/host_vector.h:24,
from thrust_1_example.cpp:1:
/home/me/project/thrust/detail/config/config.h:25:49: error: thrust/detail/config/simple_defines.h: No such file or directory
я нашел это detail/config
действительно пусто. Я что-то пропустил?
#include <thrust/host_vector.h>
#include <thrust/device_vector.h>
#include <iostream>
int main(void)
{
// H has storage for 4 integers
thrust::host_vector<int> H(4);
// initialize individual elements
H[0] = 14;
H[1] = 20;
H[2] = 38;
H[3] = 46;
// H.size() returns the size of vector H
std::cout << "H has size " << H.size() << std::endl;
// print contents of H
for(int i = 0; i < H.size(); i++)
std::cout << "H[" << i << "] = " << H[i] << std::endl;
// resize H
H.resize(2);
std::cout << "H now has size " << H.size() << std::endl;
// Copy host_vector H to device_vector D
thrust::device_vector<int> D = H;
// elements of D can be modified
D[0] = 99;
D[1] = 88;
// print contents of D
for(int i = 0; i < D.size(); i++)
std::cout << "D[" << i << "] = " << D[i] << std::endl;
// H and D are automatically deleted when the function returns
return 0;
}
Если вы просто установите CUDA 5.5, вы получите 1.7.
Если вы нацелены на серверную часть графического процессора (то есть хотите запустить код поддержки на графическом процессоре), это требует nvcc
, компилятор / драйвер кода устройства GPU, который поставляется с CUDA 5.5.
Вы не можете создать код тяги GPU с gcc
(вы должны использовать nvcc
) и имя файла должно заканчиваться на .cu
не .cpp
Других решений пока нет …