GPU 클러스터(GPU cluster)는 각 노드에 GPU(그래픽 처리 장치)가 장착된 컴퓨터 클러스터이다. GPGPU(그래픽 처리 장치)의 범용 컴퓨팅을 통해 최신 GPU의 컴퓨팅 성능을 활용하면 GPU 클러스터를 통해 매우 빠른 계산을 수행할 수 있다.

GPU를 사용한 최초의 슈퍼컴퓨터인 타이탄 (슈퍼컴퓨터)(Titan)

하드웨어(GPU)

편집

GPU 클러스터의 하드웨어 분류는 이기종 및 동기종이라는 두 가지 범주로 분류된다.

이기종

편집

두 주요 IHV의 하드웨어(AMD 및 NVIDIA)를 사용할 수 있다. 동일한 GPU의 서로 다른 모델이 사용되더라도(예: 8800GT와 8800GTX 혼합) GPU 클러스터는 이기종으로 간주된다.

동기종

편집

모든 단일 GPU는 동일한 하드웨어 클래스, 제조업체 및 모델로 구성된다. (즉, 모두 동일한 양의 메모리를 가진 100개의 8800GT로 구성된 동종 클러스터)

GPU마다 활용할 수 있는 기능이 다르기 때문에 위의 의미 체계에 따라 GPU 클러스터를 분류하는 것은 주로 클러스터에서의 소프트웨어 개발을 지시한다.

하드웨어(기타)

편집

상호 연결

편집

컴퓨터 노드와 해당 GPU 외에도 노드 간에 데이터를 이동하려면 충분히 빠른 상호 연결이 필요하다. 상호 연결 유형은 주로 존재하는 노드 수에 따라 달라진다. 상호 연결의 예로는 기가비트 이더넷과 인피니밴드가 있다.

공급업체

편집

엔비디아는 테슬라 20 시리즈 GPGPU를 사용하여 완전히 구성된 GPU 클러스터를 구축하고 제공할 수 있는 역량을 갖춘 전용 TPP(Tesla Preferred Partner) 목록을 제공한다. AMAX 인포메이션 테크놀로지스, , 휴렛 팩커드실리콘 그래픽스는 완전한 GPU 클러스터 및 시스템 제품군을 제공하는 몇 안 되는 회사 중 일부이다.

소프트웨어

편집

많은 GPU 장착 머신을 하나의 머신으로 작동시키는 데 필요한 소프트웨어 구성요소는 다음과 같다.

  1. 운영 체제
  2. 각 클러스터 노드에 존재하는 각 유형의 GPU에 대한 GPU 드라이버이다.
  3. 클러스터링 API(예: 메시지 전달 인터페이스, MPI).
  4. VirtualCL(VCL) 클러스터 플랫폼은 수정되지 않은 대부분의 응용 프로그램이 모든 장치가 로컬 컴퓨터에 있는 것처럼 클러스터의 여러 OpenCL 장치를 투명하게 활용할 수 있도록 하는 OpenCL™용 래퍼이다.

알고리즘 매핑

편집

GPU 클러스터를 실행하기 위해 알고리즘을 매핑하는 것은 기존 컴퓨터 클러스터에서 실행하기 위해 알고리즘을 매핑하는 것과 다소 유사하다. (예: RAM에서 배열 조각을 배포하는 대신 텍스처가 GPU 클러스터의 노드 간에 나뉜다.)

외부 링크

편집