CUDA 커널에서 2D 벡터를 배열로 변환 할 수있는 방법이 있습니까? 내가 cudaMalloc에 원하는 호스트 장치에 복사std :: CUDA로 배열 할 벡터
vector<vector<int>> information;
그것을 할 수있는 가장 좋은 방법 일 것입니다 무슨 :로
는선언?
int *d_information;
cudaMalloc((void**)&d_information, sizeof(int)*size);
cudaMemcpy(d_information, information, sizeof(int)*size, cudaMemcpyHostToDevice);
CUDA에서는 std :: vector를 사용할 수 없습니다. 추력을 사용하는 것이 도움이 될 수 있습니까? 전에는 사용 해본 적이 없지만, STL 라이브러리와 비슷하지만 CUDA에서 읽었을 때까지 읽었습니다. 어떤 조언? – BRabbit27
아니요, 추력은 이에 대한 지원도하지 않습니다. 호스트 배열을'std :: vector'으로 평평하게 만들고 장치의 선형 메모리처럼 인덱싱하는 것이 훨씬 낫습니다. –
talonmies
@ BRabbit27 : 편집 내용이 거부 된 이유를 모르겠습니다. 맞습니다. 나는 그 코드를 브라우저에 표시했고, 그 면책 조항을 넣었을 때, 나는 정말로 그것을 의미한다. – talonmies