TPU(Tensor Processing Units) 즉, 텐서 처리 장치는 구글이 2015년 개발하고 2016년 5월에 공개한 데이터 분석 및 딥러닝 용 하드웨어다. 머신러닝(기계학습) 알고리즘에 특화한 맞춤형 전용 반도체(ASIC·Application Specific Integrated Circuit, 특정 용도용 집적회로)로, 특정 조건에서 많은 계산이 필요한 작업을 빠르게 수행하도록 설계된 NPU(Neural Processing Unit, 신경망 처리 장치)의 일종이다.
다만 다른 NPU와 다르게 TPU는 구글에서 자체 개발한 AI 기계 학습 엔진 소프트웨어인 ‘텐서 플로(Tensor Flow)’에 최적화돼 있다. 텐서 플로는 파이썬 객체를 텐서(Tensor)로 변환해서 행렬 연산을 수행한다. 텐서는 벡터와 행렬, 그리고 3차원 이상의 고차원 배열과 같은 데이터를 모두 행렬 형태로 일반화하고 단순화한 데이터 구조를 말한다.
TPU는 그 자체로 반도체 종류가 아니라 구글의 NPU 제품군이라 하는 것이 적절하다. 구글 자체 기술이 포함됐기 때문에 TPU의 메모리 시스템이나 설계 방법에 대해서는 자세히 공개되지 않았다.
구글 블로그 설명에 따르면, TPU는 중앙 처리 장치(CPU)와 데이터를 주고받는 특정 조건 하에서 그래픽 처리 장치(GPU)의 10배 정도의 속도를 낼 수 있다. TPU 구동 방식은 우선 학습 데이터가 TPU 칩 내부 인피드 큐(Infeed Queue, 임시 저장 장치)에 저장되고 이를 호스트 머신(CPU 등)이 텐서 플로 체제 하에서 데이터를 전처리하고 TPU 내 HBM(고대역폭메모리)으로 전송한다. 이후 HBM으로부터 데이터를 로드해 각 코어가 같은 레이어를 실행하고 각 단계가 끝날 때마다 데이터 결과값(데이터와 매개변수 간의 모든 곱셈 결과의 합)을 통합해 출력한다.
이러한 TPU의 병렬처리 방식으로 신경망에 사용되는 대규모 행렬 연산을 고속으로 처리할 수 있다. 2016년 이세돌 9단과 바둑대결을 펼쳤던 ‘알파고 리’에도 48개의 TPU가 장착됐다. 2020년 삼성전자의 음성 지원 시스템인 ‘빅스비’에도 TPU가 탑재돼 학습 속도가 기존보다 18배 빨라졌다고 구글은 밝혔다.
구글은 2016년 초기 버전인 v1을 공개했고, 현재는 6세대 TPU인 ‘트릴리움(Trillium)’까지 공개한 상황이다. 구글은 트릴리움이 기존 TPU v5e에 비해 HBM용량과 대역폭을 두 배로 늘렸고, ICI(Interchip Interconnect) 대역폭도 두 배로 늘렸다고 설명했다.
특히 TPU 제품군은 ‘전성비(전력 소비량 대비 연산 성능)’가 좋기로 유명하다. TPU는 CPU, GPU보다 소비전력(1W)당 AI 연산 성능은 30〜80배 높다. 기업 입장에서는 장기적으로 TPU를 활용하는 것이 유리한 상황이다.
AI 산업이 성장하며 낮은 전력으로 모델을 빠르게 학습시키고자 하는 수요는 계속 증가하고 있다. 짐 켈러 텐스토렌트 CEO는 지난 10일 조선비즈와의 인터뷰에서 “과거에는 컴퓨터 계산의 90%가 CPU, 10%가 GPU로 이뤄졌다면, 앞으로는 CPU가 10%, GPU가 10%, TPU가 80%를 해낼 것이다”라고 말했다.
김홍찬 기자 hongchan@chosunbiz.com
댓글0