나무모에 미러 (일반/밝은 화면)
최근 수정 시각 : 2024-11-21 15:15:31

TPU

텐서코어에서 넘어옴

파일:나무위키+유도.png  
은(는) 여기로 연결됩니다.
열가소성 폴리우레탄(Thermoplastic Polyurethane)에 대한 내용은 폴리우레탄 문서
번 문단을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
참고하십시오.

파일:Google-TPU-v4.png
파일:external/3.bp.blogspot.com/tpu-1.png
알파고 실물

1. 개요
1.1. 텐서의 의미
2. 소프트웨어3. 사용
3.1. TPU Research Cloud(TRC)
4. 성능5. 제품6. 관련 문서

1. 개요

Tensor Processing Unit

구글에서 2016년 5월에 발표한 머신러닝을 위해 설계된 ASIC이다. 대규모 행렬 연산에 특화되어 있다. #

TPU의 설계는 구글이 브로드컴과 공동[1]으로 수행하고 있다.

1.1. 텐서의 의미

파일:상세 내용 아이콘.svg   자세한 내용은 텐서 문서
번 문단을
부분을
참고하십시오.

2. 소프트웨어

TPU를 위한 소프트웨어로는 구글에서 오픈소스로 공개한 TensorFlow 공식 웹사이트가 있다 PyTorch에서는 PyTorch/XLA로 TPU에서 작업을 수행할 수 있다. JAX를 사용할 수도 있다. 이들 라이브러리에서 작성된 모델은 XLA 그래프로 변환된 후 TPU 실행 파일로 컴파일, 실행된다.

3. 사용

Google Cloud PlatformCloud TPU를 통해 이용할 수 있다. Colab에서는 무료로 TPU v2-8을 이용할 수 있고, Kaggle에서는 TPU v3-8을 이용할 수 있다.

현재 소비자가 구할 수 있는 TPU는 Edge TPU 기반의 제품인 코랄 보드[2] 일체형 보드에서 부터 PCIe/M.2 카드까지 다양한 폼펙터로 제공된다. 다만 구글이 데이터센터용으로 쓰는 TPU가 아닌 저전력 버전 기반이라 성능은 다르다. 또한 텐서플로 라이트를 지원한다는 게 특징.

NVIDIAGeForce 20부터 TPU와 비슷한 기능을 하는 Tensor Core를 일반 제품군에도 내장하기 시작했다. 용도는 다름아닌 레이트레이싱과 DLSS 안티에일리어싱 보조용.

AMD도 Instinct MI100부터 비슷한 기능의 Matrix Core을 내장하기 시작했다. 다만 이쪽은 일반 제품군에는 내장되지 않는 중. RDNA 3의 RX 7000번대부터는 내장될 수도 있다는 관측이 있었고, 실제로 비슷한 역할인 AI 매트릭스 액셀러레이터가 내장되었다.

2023년 모건 스탠리가 발간한 리포트 등 각종 통계에 의하면 NVIDIA의 최신 칩셋인 A100 주요 고객 리스트에 구글은 없다.# 이를 통해 딥러닝 관련 워크로드 수행 분야에서는 TPU가 이미 엔비디아의 역할을 대부분 대체했다고 추정해볼 수 있다. 다만 구글 클라우드 플랫폼의 데이터센터에는 엔비디아의 칩셋이 상당수 쓰이고 있으니 분야 혼동에 주의할 필요가 있다.

3.1. TPU Research Cloud(TRC)

TRC를 사용하면 연구 결과를 공유하는 조건으로 1달간 무료로 TPU를 사용할 수 있다. # 신청하면 수 시간 내로 승인 메일이 오고, 추가로 내용을 제출하면 주어진 제공량을 Cloud TPU에서 무료로 사용할 수 있다. TRC 팀에 문의하면 더 긴 기간이나 더 많은 제공량을 사용할 수도 있다.

4. 성능

CPU와 GPU는 기본적으로 폰노이만 구조의 프로세서이므로 메모리 접근에 폰노이만 병목이 발생한다. TPU는 행렬 연산을 목적으로 설계되었기에 여러 누산기가 직접 연결된 시스톨릭 배열 아키텍처를 사용한다. 따라서 TPU는 행렬 연산 중 메모리 엑세스가 필요하지 않고, 적은 전력 소비로 높은 성능을 달성할 수 있다. # 이 외에도 bfloat16 자료형으로 메모리를 절약하고 성능을 개선한다.

또한 TPU는 TPU Pod로 쉽게 확장되도록 설계되었다. TPU Pod는 서로 고속으로 연결된 TPU 기기의 모음으로, 이를 통해 TPU를 사용한 학습을 선형적으로 확장할 수 있다. 실제로 구글은 50,944개의 TPU v5e 칩으로 학습을 실행하기도 했다. #

5. 제품

v1 v2 v3 Edge v1 v4 v5e v5p v6e
공개 2016년 2017년 2018년 2018년 2021년 2023년 2023년 2024년
공정 28nm 16nm 16nm 7nm[3] 5nm 5nm 4nm
크기 331mm2 <625mm2 <700mm2 <400mm2 350mm2 700mm2 790mm2
클럭 700MHz 700MHz 940MHz 1050MHz 1750MHz 2040MHz 2060MHz
메모리 8GiB DDR3 16GiB HBM 32GiB HBM 32GiB HBM 16 GiB HBM 95GiB HBM 32GiB HBM
메모리 대역폭 34GB/s 600GB/s 900GB/s 1,200GB/s 819 GB/s 2765 GB/s 1640 GB/s
소비전력 75W 280W 220W 2W 170W 미공개 미공개 미공개
초당 연산 성능 (int8) 23 TOPs 92 TOPs 246 TOPs 4 TOPs 550 TOPs 393 TOPs 918 TOPs 1836 TOPs
초당 연산 성능 (bfloat16) 11.5 TFLOPs 46 TFLOPs 123 TFLOPs 2 TFLOPs 275 TFLOPs 197 TFLOPs 459 TFLOPs 918 TFLOPs
TOPS/W 0.31 0.16 0.56 2 1.62 미공개 미공개 미공개

6. 관련 문서


[1] 2023년 9월 구글이 브로드컴과의 TPU 설계 협력 계약을 종료한다는 루머가 돌자 브로드컴의 주가가 급락하기도 했으나 구글은 브로드컴과의 협력이 계속된다고 발표했다.#[2] 구글과 관계된 회사에서 제품화 했기 때문에 보통 구글 코랄 보드라고 부른다.[3] TSMC[4] 이 때문에 일부 서드파티 업체들은 Coral TPU를 M.2로 해서 병렬로 연결하는 식으로 상용 TPU제품을 만들어다 팔기도 했다.