문제

실시간 3D 모델링에서 응용 프로그램을 최적화하려고 시도합니다. 응용 프로그램의 계산 부분은 CUDA의 GPU에서 거의 전적으로 실행됩니다. 응용 프로그램에는 작은 (6x6) 이중 정밀 대칭 긍정적 인 명확한 선형 시스템 ax= b 500+ 시간당 솔루션이 필요합니다. 현재 이것은 CHOLESKY를 사용하는 효율적인 CPU 기반 선형 대수 라이브러리로 수행되지만 CPU GPU에서 데이터를 복사하고 초당 GPU로 돌아가고 커널의 오버 헤드가 각 시간을 시작합니다.

CPU에 데이터를 가져 가지 않고 GPU의 선형 시스템으로의 해결책을 어떻게 계산할 수 있습니까? 나는 마그마 라이브러리에 대해 조금 읽었지만 GPU 전용 알고리즘보다는 하이브리드 알고리즘을 사용하는 것으로 보입니다.

는 GPU의 개별 선형 시스템의 솔루션이 기존의 CPU 기반 라이브러리보다 훨씬 더 느리게 될 것이라는 사실을 준비했습니다. 그러나 나는 그걸 제거하여 이루어질 수 있는지 확인하고 싶습니다. 호스트와 장치 간의 데이터 통신 및 커널의 오버 헤드가 초당 수백 번 씩 시작됩니다. GPU 만 LABACK-LIKE ACTIONATION이없는 경우 GPU에서만이 특별한 6x6 사례를 해결하기 위해 무언가를 구현하는 것에 대해 어떻게 구현할 것입니까? 예를 들어 GPU Blas 라이브러리와 함께 거대한 시간 투자없이 수행 할 수 있습니까?

도움이 되었습니까?

해결책

NVIDIA는 일괄 처리 된 AX= B 해솔 등록 된 개발자 웹 사이트에 마지막 가을에 대한 코드를 게시했습니다. 이 코드는 일반적인 행렬에서 작동하며, 귀하의 필요에 따라 충분히 잘 작동해야합니다 (6x6에 대한 문제가 아님). 긍정적 인 명확한 행렬에 대해 불필요한 코드가 불필요한 피벗을 수행하는 경우 귀하의 경우에 최적이 아닙니다. 그러나 코드가 BSD 라이센스에있는 것에 따라 목적으로 수정할 수 있습니다.

NVIDIA의 표준 개발자 웹 사이트가 현재 몇 가지 문제가 발생했습니다. 이 시간에 일괄 처리 된 솔버 코드를 다운로드하는 방법은 다음과 같습니다.

(1) http://www.nvidia.com/content /cuda/cuda-toolkit.html

(2) 기존의 NVDeveloper 계정 (예 : Partners.nvidia.com을 통해) 화면의 오른쪽 절반에있는 녹색 "nvdeveloper"링크를 클릭하십시오. 그렇지 않으면 "NVDeveloper 가입"을 클릭하여 새 계정을 신청하십시오. 새 계정에 대한 요청은 일반적으로 영업일 기준 이내에 승인됩니다.

(3) 전자 메일 주소와 암호로 프롬프트에서 로그인

(4) "최신 다운로드"라는 오른쪽 측면에 섹션이 있습니다. 상단의 다섯 번째 항목은 "일괄 처리 된 솔버"입니다. 그것을 클릭하면 코드의 다운로드 페이지로 인해 코드가 표시됩니다.

(5) "다운로드"링크를 클릭 한 다음 "수락"을 클릭하여 사용권 조항을 수락하십시오. 다운로드가 시작되어야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top