CUDA(Compute Unified Device Architecture)는 NVIDIA가 그래픽 처리 장치(GPU)를 위해 개발한 기술 플랫폼으로, GPU의 연산 처리 속도를 크게 향상시키는 역할을 합니다. NVIDIA CUDA 코어는 GPU 내부에 탑재된 병렬 처리 유닛으로, 일반적으로 코어 수가 많을수록 더욱 강력한 성능을 기대할 수 있습니다.
CUDA를 활용하면 연구자와 소프트웨어 개발자가 복잡한 어셈블리 코드 없이도 C, C++, Fortran 코드를 GPU로 직접 전송할 수 있습니다. 이러한 간소화 덕분에 수천 개의 작업(스레드)이 동시에 실행되는 병렬 컴퓨팅의 장점을 극대화할 수 있습니다.
CUDA 코어란 무엇인가?
NVIDIA CUDA 코어는 컴퓨터의 CPU와 유사한 역할을 하는 병렬 프로세서입니다. 우리가 흔히 아는 듀얼 코어나 쿼드 코어 CPU와 비슷한 개념이지만, NVIDIA GPU에는 무려 수천 개의 코어가 탑재될 수 있다는 점이 큰 차이입니다.
NVIDIA 그래픽 카드를 구매할 때 제품 사양에서 CUDA 코어 수를 확인할 수 있는데, 이 코어들은 GPU의 속도와 처리 능력과 관련된 다양한 작업을 담당합니다.
CUDA 코어는 GPU를 통과하는 데이터를 처리하는 역할을 맡고 있기 때문에, 특히 비디오 게임에서 캐릭터와 배경 화면이 로딩되는 상황에서 그래픽 렌더링을 효율적으로 처리합니다.
AMD 스트림 프로세서와의 차이점
CUDA 코어는 AMD의 스트림 프로세서(Stream Processor)와 개념적으로 유사하며, 단지 명칭만 다를 뿐입니다. 하지만 주의할 점은, 300개의 CUDA 코어를 가진 NVIDIA GPU와 300개의 스트림 프로세서를 가진 AMD GPU를 단순히 숫자만으로 동등하게 비교해서는 안 된다는 것입니다. 두 회사의 아키텍처 설계 방식이 다르기 때문에 실제 성능은 벤치마크 결과를 통해 확인하는 것이 좋습니다.
CUDA 코어가 제공하는 향상된 성능을 활용하도록 최적화된 다양한 애플리케이션이 있으며, 해당 프로그램 목록은 NVIDIA 공식 GPU 애플리케이션 페이지에서 확인할 수 있습니다.
CUDA 지원 그래픽 카드 선택 방법
일반적으로 CUDA 코어 수가 많을수록 그래픽 카드의 전반적인 성능이 뛰어납니다. 하지만 CUDA 코어 수는 그래픽 카드를 선택할 때 고려해야 할 여러 요소 중 하나일 뿐이라는 점을 기억해야 합니다. 클럭 속도, 메모리 용량, 메모리 대역폭 등 다른 사양들도 함께 살펴보아야 합니다.
NVIDIA는 8개의 CUDA 코어를 가진 보급형 제품부터 GeForce GTX TITAN Z의 5,760개 CUDA 코어를 갖춘 고성능 모델까지 폭넓은 라인업을 제공하고 있습니다.
Tesla, Fermi, Kepler, Maxwell, Pascal 아키텍처를 기반으로 하는 그래픽 카드는 모두 CUDA를 지원하며, 이후 출시된 Volta, Turing, Ampere, Ada Lovelace 등 최신 아키텍처 역시 CUDA 기술을 지원합니다.