GPU를 활용한 CUDA Programing 의 발전 가능성은?

rlawnsgh3의 이미지

NVIDIA에서 CUDA Programing을 오픈소스로 제공하면서 GPU를 이용한 프로세서 개발에 한참 진행중인걸로 알고 있습니다.

작년까지만 해도 우리나라에서 NVIDIA측에서 쿠다를 이용한 강좌도 여러 차례 진행하고 하드웨어 신제품도 몇가지 나온걸로 알고 있는데요.

올해도 벌써 5월이 다되어 가는데 우리나라에서 CUDA에 대한 새로운 기사나 개발사례에 대한 내용 기사를 본적이 없고

하드웨어 신제품도 특별히 나온게 없는거 같네요.

이전 까지는 NVIDIA측에서 독자적으로 CUDA Programing을 개발하여 공개 소스를 하여 시장을 먼저 선점할려는 취지인거 같습니다만

AMD측에서 ATL그래픽카드도 NVIDIA 처럼 프로그램밍 코드를 공개하고

인텔쪽에서도 GPU관련 기술을 개발한다고 들었는데 이런 경쟁 업체들이

이쪽 분야로 적극성있게 경쟁을 한다면 기술력이 정말 빠르게 발전할지

어디까지 발전할지 참 궁금합니다..

그리고 GPU기술이 참 새로운 시도이고 아직 개발 초기 단계이고

메모리 공유 문제라던지 여러가지 문제에 봉착되어 있습니다만

잠깐 반짝였다가 사라지는 그런 기술이 아니고 모든 하드웨어 시스템과

솔루션에 도입되는 그런 시스템으로 발전되었으면 하는 바램이네요..

hiseob의 이미지

GPGPU는 아직 시작단계라고 볼수 있겠네요.
그리고 일반사용자가 GPGPU의 개념을 쓸일이 뭐 있을까 생각해봐도 별로 없는데요 ^^;
GPU 의 부동소수점 연산성능을 사용하는건 nvidia의 phsyx 가 있겠네요. 뭐 게임용이긴 하지만.

nvidia 의 cuda 말고 ati , nvidia , intel 등등 참여해서 OpenCL 이라는거 만들고 있더군요.

kslee80의 이미지

CUDA 를 활용한 End-User App. 는 몇가지 등장한게 있긴 하죠...

- CoreAVC 1.9.0.0 부터 CUDA 를 이용해서 디코딩하는 기능이 들어갔습니다.
(PureVideo HD 가 더 나아 보이긴 하지만, PureVideo HD 를 사용할 수 없는 상황이라면 없는것보다는 낫겠죠.)
- TMPGEnc 도 CUDA 를 이용해서 인코딩하는 인코더가 나왔습니다. CUDA 를 이용하지 않고 CPU 만으로 인코딩하는 경우와의
인코딩 결과물 차이가 좀 있어서 (안좋은 쪽으로...) 약간 실망스럽긴 하지만 말이죠.

적어놓고 보니, 멀티미디어 쪽이 대부분이군요..;;

ATI(AMD) 는 Stream 이라는 이름으로 CUDA 와 같은 개념의 API 를 공개했습니다만,
현재 이것을 사용해서 나온 App. 는 Folding@Home 정도네요...
(Folding@Home 은 CUDA 클라이언트도 존재합니다)

hiseob 님이 OpenCL 이야기를 하셨는데...
ATI 는 OpenCL 쪽을 주력으로 밀고 있는듯 싶더군요.
Stream 는 그저 CUDA 의 대응 정도로 공개한 듯 싶고요..

현재까지의 모습으로는 CUDA 쪽이 다른 쪽에 비해서 결과물도 존재하고 이래저래 앞서나가는 모양새입니다만,
시장(?) 은 OpenCL 과 같은 통합된 API 를 기대하는게 아닐까 싶긴 합니다.

P.S.) CUDA 의 진척도가 높은것은 nVIDIA 의 사정과 맞물려 있어 보이기는 합니다..
(관련 경쟁사들과 다르게 Generic-purpose Processor 를 가지지 못한 회사라는 사정)

kite7의 이미지

http://minjang.egloos.com/1920699

인텔은 x86 명령어를 수행할 수 있는 gpu 를 만드는 것 같은데요
아직 상용화 되려면 2~3년 더 있어야 하는것 같은데 과연 어디가 승자가 될지 궁금하군요.

다만 x86 명령어가 실행되는 gpu가 있다면 gpu 쪽 프로그래밍 진입장벽이 더 낮아질 것 같습니다.
(nvidia나 ati 와 같은 gpu 칩 아키텍처는 cpu에 비해서 공개 안되어 있는것이 많다고 하는군요 )

또 다른 쪽으로는 x86 호환 gpu가 나온다면 괴물 게임 프로그래머들이 하드웨어를
마음껏 제어하기가 편해지지 않을까 생각해봅니다.
아래와 같은 글로 비춰봐서요......

http://cafe.naver.com/xbox360korea.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=167713

truecolor의 이미지

http://www.google.com/cse?cx=004924421253509693249:ueu_630lqzg&cof=FORID:0&q=라라비

CUDA는 지금 가장 뜨거운 분야 중 하나입니다. 그리고 CUDA 같은 GPGPU가 적용 가능한 부분이 풍부한 병렬성이 있는 분야니까 아무래도 멀티미디어, 수학 관련 알고리즘이 되겠죠. 무슨 웹서버 디비서버가 GPGPU의 병렬 기능으로 돌아갈 수는 없으니깐요 ^^

kirrie의 이미지

참고로.. 집에서 setiathome을 돌리는데, CUDA client가 나오길 고대하다가 최근에 릴리즈 된 것을 깔아보니...

seti가 돌아가면 화면이 뚝뚝 끊깁니다. GPU를 고도로 사용하는 연산 때문에 렉이 생기는 것은 이해하겠지만,
그냥 웹서핑 하는데도 끊기더군요. 창 전환이라던가.. 모든 화면이 다 그렇습니다.
아직 최적화가 안되었거나 제가 셋팅을 잘못한게 아닌가 하는 생각이 들었지만, 조금 실망스러웠다는.. ㅜ.ㅜ
--->
데비안 & 우분투로 대동단결!

--->
데비안 & 우분투로 대동단결!

sangwoo의 이미지

상당히 유망하다고 봅니다. 특히 과학 시뮬레이션 쪽에서 인텔 프로세서에 비해 x100 speedup을 달성했다.. 이런건 꽤 드물지 않게 볼 수 있는 정도이구요. 문제는 CUDA는 아직 double floating point 가 지원이 안됩니다. :-)
----
Let's shut up and code.

----
Let's shut up and code.

prio의 이미지

compute capability 1.3 이상 부터는 double precision 도 지원됩니다.
G200 device들은 모두 해당되지요.

truecolor의 이미지

8 코어 머신에서 엄청나게 큰 행렬(dense matrix) 곱셈을 하면 싱글 코어보다 이론적으로 8배 이상 빨라질 수 없습니다. 물론 캐시 등의 최적화로 수퍼리니어하게 10배 20배도 빨라지겠지만 이론상으론 8코어니까 8배 이상 빨라질 수는 없죠. 반면, 이런 큰 행렬을 GPU에서 곱셈을 시키면 싱글 코어 CPU보다 천배 정도 빨라지는 건 보통 일도 아닙니다.

여기서 전공자라면 이걸 제대로 필터링해서 이해하겠죠. "특정 분야, 즉 데이터 수준 병렬성이 풍부한 프로그램은 (당연히) GPGPU에서 돌리면 빠르겠지!" 라고 말입니다. 그런데 컴퓨터에 아는 게 전혀 없는 IT 기자나 일반인들은 오해하기 딱 좋습니다. nVidia 역시 이걸 의도적으로 왜곡해서 호도하죠. 이렇게 말입니다: "인텔 프로세서보다 nVidia CUDA를 쓰면 수백 수천배 빨라닙니다." 아니면 "CPU와 GPU의 대결" 이런 황당한 이야기는 믿으시면 안되겠습니다.

CUDA는 프로그래밍 모델이 너무 개떡같습니다. 한번이라도 코딩해보신 분은 알겠지만 별로 쉽지 않습니다. nVidia는 쉽다고 주장하지만 별로 동의하지 않습니다. 그렇게 따지면 Cell BE 프로그래밍도 쉽겠죠.

sangwoo의 이미지

맞는 말씀입니다. :-) 제가 너무 잘라서 이야기했네요.
제가 연구하는 쪽의 프로그램은 blas/lapack 을 쓴 high-dimension의 행렬계산이 많은데요, 이런 경우에 큰 향상을 얻을 수 있습니다.
----
Let's shut up and code.

----
Let's shut up and code.

MasterQ의 이미지

http://developer.download.nvidia.com/compute/cuda/2_1/toolkit/docs/NVIDIA_CUDA_Programming_Guide_2.1.pdf

잠깐 봤는데 꽤 흥미있어 보입니다. 시간이 나면 한번 따라해 봐야겠습니다.

cleansugar의 이미지

두번째 cuda 책 나왔습니다.

openmp 책도 있네요.

재벌 2세가 재벌이 될 확률과
금메달리스트 2세가 금메달을 딸 확률이 비슷해지도록
자유오픈소스 대안화폐를 씁시다.

아이디의 아이디어 무한도전
http://blog.aaidee.com

귀태닷컴
http://www.gwitae.com

익명 사용자의 이미지

해커들 패스워드 크랙하는데에도 도움이 되겠군요
--
아 이미 쓰이고 있었네요.