2010-02-04 3 views
6

나는 이미지와 비디오 알고리즘을 개발하는 C++ 프로그래머입니다. Nvidia CUDA를 배워야합니까? 또는 사라질 technlogies 중 하나입니까?Learn Nvidia CUDA

답변

11

CUDA은 현재 NVIDIA의 단일 공급 업체 기술이므로 OpenCL이 제공하는 다중 공급 업체 지원이 없습니다.

그러나 OpenCL보다 성숙하며 great documentation이 있으며이를 사용하여 학습 한 스킬은 다른 parrallel 데이터 처리 툴킷으로 쉽게 전송됩니다. 이의 예로서

는 스틸과 힐리스하여 Data Parallel Algorithms를 읽고 다음 Nvidia tutorials보고 - 두 아직 CUDA가 도입되기 전에 스틸/힐리스 용지가 20 years에 걸쳐 기록 된 사이에 명확한 링크를 프로그래머.

마지막으로 FCUDA Projects은 CUDA 프로젝트가 비 NVIDIA 하드웨어 (FPGA)를 대상으로 할 수 있도록 노력하고 있습니다.

2

나는 오픈 표준이며 ATI, nVidia 등에서 지원되는 OpenCL을 사용해야한다고 생각합니다. CUDA는 향후 몇 년 동안 사라지지 않을 수도 있지만 어쨌든 비 -nVidia GPU와 호환되지 않습니다.

+0

왜 downvote ??? – AndiDog

3

CUDA는 잠시 머물러야하지만, 방금 시작하면 OpenCL 또는 DirectCompute을 볼 것을 권합니다. 이 두 제품 모두 NVidia 하드웨어뿐 아니라 ATI에서도 실행되며 CPU의 SSE (vector unit)에 대한 작업도 수행합니다.

2

OpenCL은 언젠가 퍼베이시브가 될지도 모르지만 나는 CUDA를 매우 유익하게 배우는 것으로 밝혀졌으며 CUDA가 곧 주목받을 것이라고 생각하지 않습니다. 게다가 CUDA는 배우기에 걸리는 시간이 CUDA의 수명보다 훨씬 짧습니다.

2

이것은 고성능 컴퓨팅, 병렬 컴퓨팅의 시대입니다. CUDA 및 OpenCL은 실제로 고성능 컴퓨팅 인 GPU Computing의 신기술입니다! 열정적 인 프로그래머이고 병렬 알고리즘에서 벤치 마크를 달성하고자한다면 이러한 기술을 실제로 사용해야합니다. 귀하의 프로그램의 데이터 병렬 부분은 GPU의 많은 코어 아키텍처에서 초당 몇 초 이내에 실행될 것입니다. 보통 CPU에서 훨씬 더 많은 시간이 걸립니다.

관련 문제