2009-09-14 4 views
5

OpenCL에 대한 몇 가지 소개 사례에서 속도가 크게 증가 할 수있는 (예 : 50x-1000x) 응용 프로그램 유형을 설명합니다. Cuda에는 멋진 예제가 많이 있지만 OpenCL에 대해서는 똑같은 것을 찾지 못했습니다.벤치 마크가있는 OpenCL 예제

좋은 예는 입자 떼, 담금질 기법 진화 알고리즘, 개미 콜로니 최적화 등에는 설명 된 알고리즘 GPU 프로그래밍의 관점에서도 간단도 소개되어

답변

4

통해 복잡한 기능의 글로벌 최적화 될 수도 . CUDA가 이러한 영역에서 예를 든 이유는 사람들이 이러한 예를 개발할 수있을만큼 충분히 오랜 시간이 걸렸다는 것입니다. 현재 GPU에서 실행되는 OpenCL의 공개 버전은 없습니다. ATI와 NVIDIA 모두 OpenCL 드라이버의 베타 버전을 제공하고 있지만 ATI는 CPU 계산 만 지원하며 NVIDIA는 NDA에 서명해야합니다. 간단히 말해서, OpenCL은 이러한 포괄적 인 예제가 개발되고 시연 된만큼 오랫동안 사용되지 않았습니다.

즉, NVIDIA의 OpenCL 드라이버를 사용하는 것은 어렵지 않습니다. 그들의 포럼 here에서 그렇게하는 방법을 찾을 수 있습니다. OpenCL 배포판에는 시작하는 데 도움이되는 몇 가지 샘플 프로그램이 포함되어 있다고 가정합니다.

이는 또한 이러한 벤치 마크 중 일부를 개발하고 결과를 게시 할 수있는 좋은 기회임을 의미합니다. 그러면 사람들은 자신의 일을 말하는 것이 아니라 자신의 일을 참조하게됩니다. 나는 너무 많은 놀라움을 기대하지 않을 것이다. OpenCL 성능은 CUDA 성능이 널리 보급되고 지원되면 CUDA 성능과 비슷한 수준이어야합니다.

+3

"GPL에서 실행되는 OpenCL의 공개 버전은 현재 없습니다." 9 월에 답변했지만 지금은 그렇지 않은 경우 확실하지 않습니다. AMD (ATI)와 엔비디아 모두 OpenCL 구현이 뛰어납니다. – dwf

0

당신은 다음과 같은 두 권의 책을 시도 할 수) (제 1 장 및 2 장)

OpenCL 프로그래밍 북 ... MultiCore CPU 및 GPU 병렬 구성 프로그래밍 (히스토리 구성 요소

둘 다 개발이 왜되었는지, 어디에서 진정한 보너스를 찾을 수 있는지 자세히 설명합니다.

벤치마킹에 대한 확신이 없지만 나 자신도 행운이 없었습니다.