2012-04-18 3 views
1

1 : cuda.lvlib에서 장치 메모리에 대한 포인터를 가져올 수 있습니까? 1D 어레이를 CUDA 메모리 (. 이 포인터를 내 DLL에 전달하고 싶습니다.1D 어레이를 CUDA 메모리에 복사 - 메모리 포인터

Q2 : DLL은 결과가 저장되는 장치 메모리에 대한 포인터를 반환해야합니다. cuda.lvlib를 사용할 수 있습니까? CUDA 메모리를 1D Array (SGL) .vi로 복사하여 resaults를 호스트로 다시 복사합니까?

감사합니다.

+0

디바이스 메모리 란 무엇입니까? CUDA 장치의 메모리? – CharlesB

+0

"장치 메모리"란 CUDA 장치 메모리 (GPU 메모리) – user1281071

답변

2

1D 배열은 일반적으로 CUDA가 장치 메모리를 할당하는 데 사용하는 선형 주소 공간 외부에 있으므로 1D CUDA 배열의 포인터를 쿼리 할 수 ​​없어야합니다.

모든 버전의 CUDA는 호스트의 memcpy 명령을 통해 1D CUDA 어레이의 내용을 읽고 쓸 수 있었으며 커널은 텍스처를 통해 읽을 수있었습니다. 최근 버전의 CUDA에서는 Fermi 급 하드웨어를 사용하여 커널은 표면 참조 및 1D 표면로드/저장 내장 함수를 통해 1D CUDA 어레이의 내용을 읽고 쓸 수 있습니다.

관련 문제