2014-09-30 3 views
3

GTX Titan Z 그래픽 카드가 있습니다. 총 메모리가 12GB (6GB + 6GB) 인 트윈 GPU가 있습니다. 사양을보기 위해 Cuda Sample (V6.5) 폴더에서 DeviceQuery 응용 프로그램을 사용할 때 총 메모리가 4GB 인 두 개의 장치가 표시됩니다. 또한 C++ 코드에서 4GB 메모리에만 액세스 할 수 있습니다. 반면 GPU-Z 소프트웨어를 실행하면 두 개의 Titan Z가 표시되며 각 Titan Z는 6GB의 메모리를가집니다. 아무도이 문제를 일으켰습니다 설명 할 수있는 방법을 해결할 수 있습니까?GTX Titan Z 글로벌 메모리

+5

실행중인 OS는 무엇입니까? 32/64 비트? – Jez

+0

Windows 7, 64 비트. – user3692886

+0

"빠른"버전의 Visual Studio를 사용하여 응용 프로그램을 컴파일하고 있습니까? 그렇다면 익스프레스 버전은 32 비트 실행 파일 (호스트 및 장치 코드 모두)을 작성하기위한 지원 만 가지고 있으므로 4GB 제한으로 실행됩니다. –

답변

5

여기서 문제는 프로그램이 32 비트 응용 프로그램으로 컴파일되고 있다는 것이 었습니다. 32 비트로 프로그램은 4GB의 메모리만을 주소 지정합니다. 장치 사양 (cudaGetDeviceProperties)을 확인하라는 CUDA의 요청은이 사실을 인식하는 것으로 보이며 실제로 사용할 수있는 4GB 만보고합니다.

64 비트 응용 프로그램으로 컴파일하면이 문제가 해결됩니다.

관련 문제