CPU와 GPU는 분석을 하지 않는 사람들도 많이들 알고 있는 이름이고, 컴퓨터 사양을 볼 때도 많이 보는 이름인데, TPU는 영 낯설다. 그런데 논문에서 사용한 스펙을 보다보면 TPU라는 이름이 자주 등장한다. 그리고 Colab을 쓸 때도 TPU를 선택하는 버튼이 있다. 모르고 안쓰는 것보다 알고 써보자라는 생각으로 적어놓는 CPU, GPU, TPU에 대한 정의.
CPU(Central Preocessing Unit)
CPU는 중앙 처리 장치라는 의미로, 컴퓨터 시스템을 통제하고, 프로그램의 연산을 실행하고 처리하는 핵심적인 컴퓨터의 제어장치를 말한다. 다시 말하면 컴퓨터의 가장 기본되는 연산 장치에 대한 칩을 의미한다. 컴퓨터를 구매할 때 가장 먼저 살펴보는 CPU로 컴퓨터의 전반적인 성능을 좌우하는 부품이라고 할 수 있다. CPU의 성능 지표는 3가지로 클럭(동작 속도)의 수치, 코어(핵심 회로)의 수 , 캐시 메모리(임시 저장소)의 용량이 있다.
GPU(Graphic Processing Unit)
CPU가 직렬처리만 가능한 칩이라면, GPU는 그래픽 처리 장치로 병렬처리로 수행하는 칩을 말한다. GPU는 많은 양의 데이터를 한꺼번에 병렬적으로 처리할 수 있다는 것이 GPU의 특징이다. 인공지능 학습을 진행할 때, 특히 딥러닝 계열 인공신경망 모델을 작업할 때는 GPU가 더 많은 역할을 한다.
아래 동영상은 CPU와 GPU를 비교하는 영상인데, CPU는 여러가지 그림이 시간이 걸려 순차적으로 그리지만, GPU는 하나의 그림을 한번에 그리는 것을 알 수 있다. 시간도 매우 빠르다.
대략적으로 CPU와 GPU에 대해서 알아보았는데, TPU는 무엇일까?
TPU(Tensor Processing Unit)
TPU는 구글에서 자체 개발한 인공지능 칩으로 구글의 AI 기계학습 엔진인 텐서플로우에 최적화되어있는 칩이다. 알파고도 이 칩으로 설계되어있다고 한다. GPU대비 40~80배 정도 전성비가 좋아 15배 정도 성능이 향상된다고 하는데, 구글에 따르면 TPU 한 개당 하루 1억개의 사진을 처리한다고 한다. 내가 지금까지 봐왔던 곳에서의 TPU는 Colab, 구글에서 발제한 논문들이었는데, 그럴만한 이유가 있었다. 현재 구글에서는 TPU의 하드웨어는 판매하지 않고 정보 제공조차 꺼리고 있다고 한다.
아무래도 텐서플로우에 최적화되어있는 칩이다보니 인공지능 모델링을 하는 분석가들에겐 가장 좋지 않을까 싶다. 언젠가 잘 상용화되어 AI분석가들에게 더욱 도움이 되면 좋겠다.
Reference
https://pipelinestudio.tistory.com/24
https://light-tree.tistory.com/25
'Study > etc' 카테고리의 다른 글
[GCP]Google cloud platform 가입하기 (0) | 2021.12.12 |
---|---|
[GCP] google cloud platform에 대하여 (0) | 2021.11.27 |
[colab] Colab에서 데이터 불러오는 방법 (드라이브 마운트 사용) (0) | 2021.02.18 |
[논문 리뷰] 추천시스템을 위한 Wide & Deep Learning (0) | 2021.01.21 |
[Trend 용어] 마이데이터(Mydata)란? (0) | 2020.12.29 |