GPU란
- GPU는 Graphics Processing Unit의 약자로, 컴퓨터 그래픽을 처리하는 장치
- 그래픽 카드를 구성하는 가장 중요한 핵심 요소
- 모니터의 픽셀들의 RGB 값, 색상, 밝기 정도를 계산
딥러닝에서 왜 GPU?
- 딥러닝에서는 CPU보단 GPU를 사용을 한다. 12코어짜리 CPU와 스트림 프로세서가 4864개 정도인 GPU, 그래픽 카드가 같은 값이다. 그 이유는 CPU에 들어가는 코어는 하나하나의 성능이 더 뛰어나기 때문이다. 예를 들면 CPU는 운동선수가 12명인 느낌이고, GPU는 초등학생이 4864명 정도인 셈이다.
- 그렇다고 해서 마냥 CPU가 좋은 것은 아니다. 상황에 따라 달라진다. 예를 들어 쓰레기 많이 줍기를 하면 초등학생의 수가 많기에 더 유리하다. 하지만 피지컬적인 것을 하면 운동선수가 더 유리하다. 이처럼 CPU와 GPU도 상황에 따라 다르다. 고수준의 연산에는 CPU가 유리하고, 저수준의 많은 연산에는 GPU가 유리하다.
- 딥러닝은 고수준의 연산을 하지 않는다. 엄청나게 많은 저수준의 연산들로 이루어져있다. 그렇기에 성능이 좋은 CPU보단 수가 더 많은 GPU가 필요한 것이다.
인공지능의 역사와 GPU
- 인공지능은 지금까지 크게 두 번의 겨울이 있었다.
- 첫번째는 재정적 위기로 인해 겨울을 맞이했다. 많은 인공지능 회사들이 성과를 내지 못해 투자가 줄어들어 겨울을 맞이했다. 최초의 인공 신경망, 퍼셉트론도 함께 막을 내렸다. 그러다 1980년대에 전문가 시스템(Expert System)이란 프로그램으로 다시 인공지능 연구가 시작되었다. 전문가 시스템은 특정 지식의 범위에 대해 문제를 해결해주거나 질문에 대답해주는 프로그램이다. 오류 역전파 알고리즘으로 다층 퍼셉트론의 학습을 실질적으로 가능하게 되면서 비선형 문제를 해결 할 수 있게 되었다. 하지만 당시 컴퓨팅 파워에 한계가 있어 인공 신경만 연구는 뚜렷한 성과가 없었다
- 애플, IBM에서 생산하는 컴퓨터의 하드웨어 성능이 발전하면서 고가의 하드웨어를 사용하는 전문가 시스템이 사라져 갔다. 전문가 시스템을 유지하기 위해 부담하는 금액이 너무 비싸다는 것이 증명 되었고, 업데이트도 어려웠다. 그래서 인공지능의 붐을 주도하던 시스템이 붕괴하자 다시 인공지능 관련 연구가 침체되었다. 그러다 1990년대에 인터넷을 통해 데이터가 많이 생기고, 무어의 법칙에서 처럼 하드웨어의 성능이 발전하면서 인공지능 연구도 늘었다. 또한 병렬 컴퓨팅, GPGPU 기술이 등장하면서 인공 신경망을 효과적으로 학습할 수 있게 되면서 딥러닝의 시대가 열렸다.
- GPU가 발전하면서 딥러닝의 시대가 열린셈이기도 하다
General-Purpose Computing on GPU (GPGPU)
- CPU가 맡았던 연산을 GPU에도 사용해 연산 속도를 향상시키는 기술
- 그래픽 처리를 위한 보조 장치였던 GPU를 보완하여 컴퓨터의 중앙처리 장치인 CPU를 대신하여 모든 데이터 연산 및 처리를 하는 GPU 상의 범용 계산 장치
- 현재는 아주 제한적이지만 컴퓨터 아키텍처를 변형하여 데이터에 스트림 프로세싱을 이용하여 고정도 연산을 그래픽 파이프라인에 연결 방식으로 CPU의 역할을 대신하는 방법으로 지속적으로 연구 개발 중