이제 CUDA compiler가 설치되었으니 잘 돌아가는지 확인을 해봐야겠지요.
여기로 가시면 예제로 배우는 CUDA Programming이라는 책의 예제 소스와 헤더파일들을 다운받을 수 있습니다.
받아서 압축을 푸시면 chapter별로 코드들이 나눠져 있을텐데요, 재밌는점은 확장자가 .cu라는 것과, 내부 코드를 보면 C와 C++을 마구 짬뽕해놓은 듯한 느낌을 받으실 수 있을껍니다.
이것은 cuda가 c를 기반으로 만들어졌기 때문인데요, 이 부분에 대해서는 나중에 언급하도록 하겠습니다.
무튼 코드가 있으니 실행을 시켜봐야겠지요.
chapter03에 들어가시면 너무나도 반가운 hello world예제가 무려 .cu 파일로 준비되어 있습니다. (근데 코드는 걍 C...)
컴파일을 해봐야겠지요.
컴파일 방법은 gcc와 동일합니다.
nvcc hello_world.cu 를 치고 나오는 a.out 파일을 기다리...는데?

자..마음을 가라앉히시고, 이건 다 코드에서 include해둔 book.h라는 파일 때문에 생기는 일입니다.
컴파일 할때 링크를 추가해봅시다. -l(소문자 L 입니다. i 아니에요) 뒤에 링크할 이름을 추가합니다.

정상적으로 작동하는군요!
이제 여러분은 cuda programming을 할 수 있는 환경을 갖추신 겁니다.
cuda 관련 포스팅은 다음 글부터..
p.s.
책의 예제 파일 중 몇몇은 cpu_bitmap.h 라는 헤더파일을 포함합니다.
이 헤더 파일은 세 가지를 따로 링크거셔야 하는데요.
-lpthread
-lglut (아마도 glut library가 설치되어있지 않을껍니다. yum install freeglut-devel 로 따로 설치해주세요.)
-lGL
이렇게 세 가지를 컴파일시 링크해주시면 되겠습니다.

....코드에 버그가 있군요;; 이 부분을 추가해주세요(왜? 에 대한 설명은 다음 기회에..)

저장하고 다시 컴파일 하시면 아래와 같은 결과화면을 볼 수 있습니다!




덧글