이미지 프로세싱 속도 비교 – CUDA vs CPU(single thread)

cuda_filter_cmp

앞선 글에서 겁나 빠르다고..말했으나 사실 측정을 하지 않았기 때문에 겁나 빠른지 의외로 안빠른지 정확히 알 수 없었다.

해서 동일한 코드를 CPU용 코드로도 돌려보고 소요된 시간을 비교해보기로 했다.

빌드환경 : x64, release모드

대상 이미지 : 697*992 32bit

필터적용 : 5×5 가우시안 필터 30회

CPU : 인텔 Q6600 2.4GHz

GPU : nVidia GeForce9800GTX+

왼쪽 스샷이 CUDA코드. 대략 6억3천만클럭, 0.265초

오른쪽 스샷이 CPU코드.대략 170억클럭. 7초.

뭐 비교 불가.
애초에 필터링 코드 자체가 좀 무식하긴 한데…그렇다고 해도 완전 동일한 C코드를 CUDA, CPU 각각 버젼으로 컴파일 한 것이므로 이미지프로세싱처럼 병렬처리하기 좋은 분야에선 CUDA가 겁나 빠르다는 결론.


답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

w

%s에 연결하는 중