Radeon Instinct

 


1. 개요
2. 상세
2.1. 용도 및 특징
2.2. ROCm 소프트웨어 플랫폼
3. 제품 일람
3.1. gfx800 / 3세대 GCN 마이크로아키텍처
3.2. gfx800 / Polaris 마이크로아키텍처
3.3. gfx900 / Vega 마이크로아키텍처
3.4. gfx900 / CDNA 마이크로아키텍처
4. 관련 문서


1. 개요


홈페이지
AMD의 머신 러닝 전용 그래픽 카드. AMD Tech Summit 2016에서 발표했으며 2016년 12월 12일 엠바고가 해제되어 공개되었다.

2. 상세



2.1. 용도 및 특징


머신 러닝 작업을 하는데 있어서 매우 자주 사용되는 게 그래픽카드이다. 많이 배운 사람이 더 많이 알듯이, 인공지능도 머신 러닝을 통해 가능한 많은 연산을 처리해 그 값들을 배우고 훈련해야 똑똑해지는 건 당연지사. 병렬 연산에 있어 절대적인 우위를 가지고 있는 그래픽 카드(GPGPU 항목을 읽고 오면 좋다.)가 머신러닝에 쓰이는 이유가 이 때문이다. 다만 머신 러닝에 있어 중요한 것은 수많은 상황을 반복적으로, 비슷한 상황을 수천 가지씩 조금씩 파생해가며 학습할 수 있도록 하는 막대한 연산량이지, 사용자가 원하는 하나의 목표값을 얻기 위해 복잡한 계산을 하는거엔 크게 신경 쓸 필요가 없다. 이 때문에 머신 러닝의 승패는 단순한 연산을 얼마만큼 압도적인 연산량으로 처리할 수 있는가에 달려있으며, 이는 곧 단정밀도 연산과 저정밀도 연산과 연관되어있다 할 수 있다. 라데온 인스팅트는 단정밀도 연산/저정밀도 연산을 특화시킨 GPU로 기존 라데온이나 라데온 프로와 다르게 머신러닝에 최적화 되어있다 할 수 있다. 반대로 배정밀도/고정밀도 연산 성능은 쓸데가 딱히 없으니 당연히 성능이 높지 않다. 다만 라데온 인스팅트 중 현재 가장 높은 위치에 있는 MI25는 워낙에 괴물급 성능을 가지고 있는지라 고정밀도 연산 성능이 저정밀도 연산성능에 비해 한참 후달려도, 다른 하이엔드 그래픽카드들에 비해 고정밀도 연산성능이 높긴하다. 엔비디아가 GPU 아키텍처를 케플러과 맥스웰로 이원화시켜 하이엔드 그래픽카드 중 머신러닝에 유리한 맥스웰 아키텍처 쪽을 머신러닝 특화로 시장에 푼 것과 비교[1]했을 때 AMD는 아예 머신러닝용 그래픽카드를 독립적인 브랜드(라데온의 하위 브랜드)로 출품시켰다고 할 수 있다. 사실 위에 특화니 뭐니 하고 장황하게 써놨지만 베가10XT를 사용하는 타 제품군의 GPU와 비교했을때,하드웨어적인 차이는 없다. [2] 사실상 AMD가 베가를 라데온에 풀긴 했지만 말그대로 출시는 했다 수준이고 베가가 아예 각잡고 단정밀도 특화시켜서 나왔다고 봐도 되는 아키텍처이기 때문에 베가를 사용한 라데온과 라데온 프로 역시 단정밀도 성능이 높게 나온다. 다만 인스팅트는 공식적인 소프트웨어 지원이 된다는 점이 차이.
이미지 컬러는 노란색. 원래 노란색은 S3 Graphics가 쓰고 있었으나, 그래픽 사업을 접은 지 오래라(...) 그냥 쓰는 듯하다.

2.2. ROCm 소프트웨어 플랫폼


2015년 11월에 개최된 SC15에서 발표한 볼츠만 계획(Boltzmann Initiative)에서 시작된 머신 러닝을 위한 소프트웨어 플랫폼. #
HIP(Heterogeneous-Compute Interface for Portability)라는 언어를 기반으로 하며, HCC(Heterogeneous Compute Compiler)라는 컴파일러를 사용한다. 이 HIP은 CUDA나 HCC C++ 컴파일러를 사용해 엔비디아에서도, AMD에서도 사용할 수 있는 범용성을 가지고 있다.

3. 제품 일람



3.1. gfx800 / 3세대 GCN 마이크로아키텍처


<rowcolor=black> 모델명
GPU
그래픽 메모리
TGP
(W)
출고
가격
($)
<rowcolor=black> 코드네임
(공정)
(면적)
SP
(ACE, SU)
클럭
(부스트)
(MHz)
L2
캐시
메모리
(MB)
버스
(bit)
규격
클럭
(비트레이트)
(MHz)
(Mbps)
용량
(GB)
<colbgcolor=black><colcolor=#FFD600>'''Instinct MI8'''
Fiji
(28 ㎚)
(596 ㎟)
4096
(4, 64)
1000
2
4096
HBM
500
(1000)
4
175
?
<color=black>
【이론적인 성능 계산식 펼치기 · 접기】
'''< 범용 연산 성능 >'''
(GPU 클럭) × (SP의 개수) × 2 ÷ 1000 = (FP32 연산 속도) [GFLOPS]
(FP32 연산 속도) ÷ 16 = (FP64 연산 속도) [GFLOPS]
(FP32 연산 속도) × 2 = (FP16 연산 속도) [GFLOPS]
'''< 그래픽 메모리 성능 >'''
(메모리 버스) ÷ 8 × (메모리 비트레이트) ÷ 1000 = (메모리 대역폭) [GB/s]


<color=black>
【용어 전체 이름 펼치기 · 접기】
Half-Precision Floating-Point = FP16
24-bit Precision Floating-Point = FP24
Single-Precision Floating-Point = FP32
Double-Precision Floating-Point = FP64
16-bit Integer = INT16
32-bit Integer = INT32
Asynchronous Compute Engine = ACE
Stream Processor = SP
Scalar Unit = SU
Total Board Power = TBP


[1] 예를 들면 GeForce TITAN X와 같다거나. 해당 항목 참조.[2] ATi의 오랜 전통에 따라, 이 제품 역시 '''타 제품군에 들어가는 VEGA 10 XT GPU와 동일하다.''' 현금이 부족한 AMD 특성상 ATi때도 하나의 GPU를 소프트웨어랑 기판만 바꿔서 FireCL FireGL Radeon에 돌려써왔지만,GCN 들어서는 아예 아키텍쳐의 목표 자체가 '''단일 아키텍처로 연산 게이밍 렌더링 모두잡겠다''' 는것이 목표였다. 그렇다보니 엔비디아는 쿼드로 타이탄 지포스 테슬라 각 제품들의 유닛 구성비가 다른데(지포스는 ROP비중이 높다던가) AMD는 그런거 없다.

3.2. gfx800 / Polaris 마이크로아키텍처


<rowcolor=black> 모델명
GPU
그래픽 메모리
TGP
(W)
출고
가격
($)
<rowcolor=black> 코드네임
(공정)
(면적)
SP
(ACE, SU)
클럭
(부스트)
(MHz)
L2
캐시
메모리
(MB)
버스
(bit)
규격
클럭
(비트레이트)
(MHz)
(Mbps)
용량
(GB)
<colbgcolor=black><colcolor=#FFD600>'''Instinct MI6'''
Polaris 10
(14 ㎚)
(232 ㎟)
2304
(4, 36)
1120
(1233)
2
256
GDDR5
1750
(7000)
8
150
?
<color=black>
【이론적인 성능 계산식 펼치기 · 접기】
'''< 범용 연산 성능 >'''
(GPU 클럭) × (SP의 개수) × 2 ÷ 1000 = (FP32 연산 속도) [GFLOPS]
(FP32 연산 속도) ÷ 16 = (FP64 연산 속도) [GFLOPS]
(FP32 연산 속도) × 2 = (FP16 연산 속도) [GFLOPS]
'''< 그래픽 메모리 성능 >'''
(메모리 버스) ÷ 8 × (메모리 비트레이트) ÷ 1000 = (메모리 대역폭) [GB/s]


<color=black>
【용어 전체 이름 펼치기 · 접기】
Half-Precision Floating-Point = FP16
24-bit Precision Floating-Point = FP24
Single-Precision Floating-Point = FP32
Double-Precision Floating-Point = FP64
16-bit Integer = INT16
32-bit Integer = INT32
Asynchronous Compute Engine = ACE
Stream Processor = SP
Scalar Unit = SU
Total Board Power = TBP



3.3. gfx900 / Vega 마이크로아키텍처


<rowcolor=black> 모델명
GPU
그래픽 메모리
TGP
(W)
출고
가격
($)
<rowcolor=black> 코드네임
(공정)
(면적)
SP
(ACE, SU)
클럭
(부스트)
(MHz)
L2
캐시
메모리
(MB)
버스
(bit)
규격
클럭
(비트레이트)
(MHz)
(Mbps)
용량
(GB)
<colbgcolor=black><colcolor=#FFD600>'''Instinct MI60'''
Vega 20
(7 ㎚)
(331 ㎟)
4096
(4, 64)
1200
(1800)
4
4096
HBM2
1000
(2000)
32
300
?
'''Instinct MI50'''
3840
(4, 60)
1200
(1746)
4
4096
HBM2
1000
(2000)
16
300
?
'''Instinct MI25'''
Vega 10
(14 ㎚)
(495 ㎟)
4096
(4, 64)
1400
(1500)
4
2048
HBM2
852
(1704)
16
300
?
<color=black>
【이론적인 성능 계산식 펼치기 · 접기】
'''< 범용 연산 성능 >'''
(GPU 클럭) × (SP의 개수) × 2 ÷ 1000 = (FP32 연산 속도) [GFLOPS]
(FP32 연산 속도) ÷ 16 = (FP64 연산 속도) [GFLOPS]
(FP32 연산 속도) × 2 = (FP16 연산 속도) [GFLOPS]
'''< 그래픽 메모리 성능 >'''
(메모리 버스) ÷ 8 × (메모리 비트레이트) ÷ 1000 = (메모리 대역폭) [GB/s]


<color=black>
【용어 전체 이름 펼치기 · 접기】
Half-Precision Floating-Point = FP16
24-bit Precision Floating-Point = FP24
Single-Precision Floating-Point = FP32
Double-Precision Floating-Point = FP64
16-bit Integer = INT16
32-bit Integer = INT32
Asynchronous Compute Engine = ACE
Stream Processor = SP
Scalar Unit = SU
Total Board Power = TBP



3.4. gfx900 / CDNA 마이크로아키텍처


<color=white> GPU별 최대 내부 구성 요소
<rowcolor=white> GPU
이름
공정
(㎚)
면적
(㎟)
HWS
ACE
GP
SE
PU
RZ
CU
SP
(FP32)
(INT32)
SU
RA
TFU
LDS
(KB)
L1
캐시
메모리
(KB)
L2
캐시
메모리
(MB)
GDS
(KB)
RB
ROP
MC
(bit)
(채널)
<color=white> '''CDNA'''
<colbgcolor=black><colcolor=#007c97>'''Arcturus'''
7
750
1
4
-
8
-
-
128
8192
128
-
-
64×128
16×128
8
64
-
-
1024×4
<color=white> GPU별 특성
<rowcolor=white> GPU
이름
그래픽
가속
GPGPU
가속
비디오
가속
호스트
인터페이스
메모리
규격
디스플레이
출력
<color=white> '''CDNA'''
<colbgcolor=black><colcolor=#007c97>'''Arcturus'''
-
OpenCL 2.0
VCN 2.5
PCIe 4.0 ×16
HBM2
-
<rowcolor=white> 모델명
GPU
그래픽 메모리
TGP
(W)
출고
가격
($)
<rowcolor=white> 코드네임
(공정)
(면적)
SP
(ACE, SU)
클럭
(부스트)
(MHz)
L2
캐시
메모리
(MB)
버스
(bit)
규격
클럭
(비트레이트)
(MHz)
(Mbps)
용량
(GB)
<colbgcolor=black><colcolor=#007c97>'''Instinct MI100'''
Arcturus
(7 ㎚)
(750 ㎟)
7680
(4, 120)
1000
(1502)
8
4096
HBM2
1200
(2400)
32
300
6400
<color=white>
【이론적인 성능 계산식 펼치기 · 접기】
'''< 범용 연산 성능 >'''
(GPU 클럭) × (SP의 개수) × 2 ÷ 1000 = (FP32 연산 속도) [GFLOPS]
(FP32 연산 속도) ÷ 16 = (FP64 연산 속도) [GFLOPS]
(FP32 연산 속도) × 2 = (FP16 연산 속도) [GFLOPS]
'''< 그래픽 메모리 성능 >'''
(메모리 버스) ÷ 8 × (메모리 비트레이트) ÷ 1000 = (메모리 대역폭) [GB/s]


<color=white>
【용어 전체 이름 펼치기 · 접기】
Half-Precision Floating-Point = FP16
24-bit Precision Floating-Point = FP24
Single-Precision Floating-Point = FP32
Double-Precision Floating-Point = FP64
16-bit Integer = INT16
32-bit Integer = INT32
Asynchronous Compute Engine = ACE
Stream Processor = SP
Scalar Unit = SU
Total Board Power = TBP


2020년 11월 16일에 발표된 컴퓨팅 카드로, NVIDIA가 A100부터 TESLA 브랜드 네임을 삭제했던 것처럼 AMD도 이때부터 라데온 브랜드 네임을 삭제하고 인스팅트만 남게 되었다. AMD가 2020년 3월 파이낸셜 데이를 통해 게이밍은 RDNA, 컴퓨팅은 CDNA로 분화할 것을 약속했기 때문에 연산 특화 목적에 맞게 그래픽스 관련 기능들이 전부 삭제되었다. 그 대신 비디오 디코딩, 인코딩 기능만 존속되어 동영상 가속을 활용할 수 있다.
이전 세대 최상위 라인이었던 MI60 대비 FP32 연산 성능이 1.5배 향상되어, 먼저 나온 경쟁사의 A100보다 약 20% 높은 FP32 연산 성능을 보여준다. 하지만, 메모리 대역폭이 MI60 대비 1.2배 향상에 그쳐서 실성능은 메모리 성능 병목으로 1.5배가 안 될 확률이 높다. 문제는 같은 시기에 경쟁사가 기존 A100의 메모리 규격을 HBM2에서 HBM2E로 업그레이드해서 메모리 대역폭이 약 30% 더 빨라진 개선판을 내놓았다는 점.
안 그래도 메모리 대역폭이 약 1.23 TB/s라서 1.56 TB/s인 기존 A100 대비 약 20% 넘게 느렸는데, HBM2E 버전의 등장으로 약 2.04 TB/s 대역폭이 구현됨에 따라 40% 넘는 격차로 벌어졌다. 결과적인 절대 성능면에서는 A100을 넘는데 실패했다고 볼 수 있으며, 결국 A100보다 절반 가까이 저렴한 가격으로 승부 해야 할 것으로 보인다.

4. 관련 문서