GPU? NVIDIA? 왜 요새 난리인가?
일단 왜 NVIDIA 가 요새 그렇게 난리인건지,
GPU 는 그래픽카드인데 이게 왜 이렇게 난리인지 엔지니어 관점으로 함 간단하게 알아보자.
GPU 를 알아보기 전에 CPU 부터 알아보자. (대표적인게 뭐, 인텔)
예를 들어서 a*b 를 10000번 반복해야 하는 프로그램이 있다고 하자. 이 경우는 10000번을 순차적으로 (싱글코어라고 가정)
수행하는게 CPU 가 일하는 방식이야. 그래서 1초에 얼마나 연산을 빨리 할수 있는지에 따라 저 10000번이 0.001 초가 걸릴수도 있고 0.01 초가 걸릴수도 있는거지.
중요한건 CPU 는 순차적으로 계산하는거다! 엄청 빠르고 효율적(?) 으로. 즉, 코어 하나하나가 엄청난 놈들인거지
그럼 GPU 는? 엄청나진 않지만 부동소수점연산(미안, 나중에이것도 쉽게 풀이해줄께!) 이나 단순덧셈연산에 강한(?) 코어들을
수백개 , 수천개 가지고선 병렬로(동시에) 계산하는거라고 생각하면 쉬워.
아까 CPU 와 같은 계산 a*b 를 10000번 반복해야 하는 프로그램을 GPU를 이용한다면, (GPU 코어가 5000라고 가정)
단순하게 2번 사이클 만으로 주어진 계산을 할수 있다. 이게 GPU의 원리인거야.
이 설명을 보고 NVIDIA 에서 만든 동영상 (검색 : Mythbusters Demo GPU versus CPU)
을 보면, 아! 하고 '탁' 이해할수 있을꺼야. (오래된 동영상이지만, 저게 가장 잘 직관적으로 설명을 잘한거 같아. 대단!)
그럼 여기서 질문, 심지어 NVIDIA 에서 만든 동영상에서도 그래픽을 예제로 들잖아?
근데 이 GPU가 왜 이렇게 인기가 있어졌냐?
가상화폐 (채굴장) 나 인공지능이 등장하기 전에는 그래픽처리 (그래픽 계산이 단순 병렬계산이 많으니까) 에만
각광을 받았었어 (추억의 지포스 씨리즈, 거의 게임을 위한거였지)
그러던데 가상화폐 (암호를 찾는게 기본적으로 곱하기 노가다거든. 두수 곱해서 원하는수가 나오도록 찾는거, 이게 암호화폐 기본이라)
인공지능 (텐서노드 : 우리 머리속에 뉴런같은건데, 이게 얽히고 설키지만 각 텐서노드는 결국 단순계산이라) 의 기본이
단순한 계산을 병렬로 처리할때 성능이 배가 되는 거라서, CPU 로 계산할수 있지 있지만 속도가 엄청 빨라야 하는데
GPU 는 좀 속도는 느려도 느린걸 겁나 많이 병렬로 붙일수 있으니까.
원래는 그래픽용으로 나온게, 가상화폐 , 인공지능에도 효율적으로 사용할수 있게 되니까, 엄청 수요가 많아 진거지
그래서? NVIDIA 주식이 날라가고 있는거 같다는 내 생각~ (다른의견댓글 환영합니다)
'소프트웨어 엔지니어 > 일반' 카테고리의 다른 글
| [소프트웨어 엔지니어] GNU (gcc, gdb, make..) (9) | 2024.10.14 |
|---|---|
| POSIX 를 따른다? 따르라? (3) | 2024.10.03 |
| [소프트웨어 엔지니어] 에자일 방법론 (1) | 2024.09.19 |
| [소프트웨어 엔지니어] 캡슐화 추상화 (1) | 2024.09.17 |
| [소프트웨어 엔지니어] 깊은 복사, 얕은 복사 (0) | 2024.09.17 |