GPU 프로그래밍

NVIDIA 이외의 GPU에서도 사용할 수 있는, GPU 등의 병렬 계산을 위한 프로그래밍 체계의 예로 올바른 것은?

  1. AHTML
  2. BSQL
  3. COpenCL
정답과 해설 보기

정답: C. OpenCL

CUDA는 NVIDIA GPU용 체계이지만, OpenCL은 업계 단체가 정한 표준 규격으로 여러 회사의 GPU나 CPU, FPGA 등에서 사용할 수 있습니다. 그 밖에도 C++로 작성할 수 있는 SYCL, AMD GPU용으로 CUDA와 비슷한 작성 방식의 HIP 등이 있습니다. 작성 방식은 달라도 스레드 계층, 공유 메모리, 병합 접근, 분기 일치시키기와 같은 원리는 공통입니다.

이 분야 연습하기 분야로 돌아가기

GPU 프로그래밍의 다른 문제

  1. GPU에서 조건에 맞는 요소만 배열에서 골라 다른 배열에 채워 넣어 출력하고 싶다(각 스레드의 출력 수는 0 또는 1). 각 스레드의 쓰기 위치 주소를 정하는 데 자주 사용되는 병렬 계산은?
  2. GPU 커널을 작성할 때 지켜야 할 전제로 올바른 것은?
  3. GPU에서 큰 행렬을 전치(b[j][i] = a[i][j])할 때, 공유 메모리를 경유시키는 주된 목적은?
  4. CUDA에서 CPU 측 프로그램이 커널을 실행한 직후의 동작으로 일반적으로 올바른 것은?
  5. CPU와 GPU의 설계 사고방식의 차이로 올바른 것은?

이 분야의 비교