그동안 AI가 코드를 다 짜줬는데,
실제로 어떻게 동작하는 건지 답답하셨죠?
AI 시대에는 AI에게 끌려가는 것이 아니라, AI에게 정확한 작업 지시를 내리고 통제하고 오케스트레이션할 사람이 필요합니다. 그런 사람은 AI에게 대체되지 않습니다.
AI코딩을 하고계신 분이든, 취업과 이직을 준비하는 분이든, 이 과정으로 그 역량을 쌓으시길 바랍니다.
이 세상에서 가장 쉽게 이해할 수 있도록 만든 GPU 원리와 그에 필요한 CS 지식을 담았습니다. 대학에서도 못 배웠고 현업에서도 배울 수 없었던 것을 가르쳐 드립니다.
AI에게 일을 더 잘 시킬 수 있게 만들어 드립니다.
이 과정은 GPU가 코드를 실제로 어떻게 실행하는지를 배웁니다. 스레드가 어떻게 묶여서 도는지, 값이 어디에 놓이느냐에 따라 왜 시간이 수십 배씩 달라지는지를 원리부터 설명합니다. 그리고 그 원리가 말로만 끝나지 않도록, 100만 개 문서에서 가장 비슷한 5개를 찾는 벡터 검색을 놓고 CPU일 때와 GPU일 때, 최적화했을 때 무엇이 어떻게 달라지는지를 화면으로 보여 드립니다. 그 과정에서 캐시, 스레드, 동기화, 부동소수점 같은 CS 지식도 함께 알려드립니다. 대학에서도 현업에서도 배우지 못한 것을 알려드립니다.
코드는 AI가 짭니다. 여러분이 하는 일은 그 코드가 이제 어떻게 동작하는지를 알게 되고 그로인해 남들보다 더 짧은 시간에 더 성능좋은 기능과 서비스를 개발 할 수 있게 됩니다.
MEASURED ON RTX 4090
| CPU 유사도 계산 | 558.83 ms |
| GPU 첫 커널 | 11.736 ms 47.6배 |
| GPU 최적화 커널 | 3.237 ms 약 173배 |
이런 분들께 추천해요
AI로 개발하는 대학생
AI로 만들 줄은 아는데, 컴퓨터가 그 코드를 어떻게 실행하는지는 모르는 분
수업이든 동아리든 혼자 만든 프로젝트든 AI가 코드를 짜 줍니다. 그런데 면접이나 발표에서 묻는 것은 결과물이 아니라 이해도입니다. "왜 이렇게 구현했나요", "CPU와 GPU는 어떤 차이가 있나요", "메모리 접근 방식이 왜 성능에 영향을 주나요" 앞에서 말이 막힌 적이 있다면, 지금 부족한 것은 프로젝트 개수가 아니라 내가 만든 시스템을 설명할 수 있는 상태입니다.
주니어 개발자
AI가 기능은 금방 만들어주는데, 성능개선은 어떻게 해야 할지 모르는 개발자
AI를 쓰면 기능은 빨리 나옵니다. 문제는 그다음입니다. 코드가 느리고, 메모리가 늘고, 트래픽이 몰리면 개선해야 합니다. AI는 해결책을 여러 개 내놓는데 무엇이 맞는지 고르는 것은 결국 본인 몫입니다. 이 판단 기준이 없으면 경력은 쌓여도 문제를 해결하는 실력은 잘 쌓이지 않습니다.
AI 엔지니어
AI에게 정확한 프롬프트를 줘서 경쟁사보다 더 빨리 성능좋게 만들어야 하는 분
AI에게 "빠르게 해 줘"라고만 하면, 돌아온 코드가 왜 그런지 모른 채 이것저것 바꿔 보며 시간을 씁니다. 원리를 알면 처음부터 정확히 지시할 수 있습니다. "이 커널의 메모리 접근이 병합되고 있는지 확인해 줘", "지금 병목이 계산인지 메모리인지 먼저 판정해 줘"처럼 말입니다. 그러면 시행착오에 며칠을 쓰지 않고 한 번에 성능이 나오는 코드를 받습니다. 경쟁사보다 빨리 내놓는 차이가 여기서 갈립니다.
수강 후에는
- AI에게 시킬 수 있는 일의 수준이 올라갑니다. "GPU로 빠르게 해 줘"에서 멈추지 않고, "이 커널의 Memory Coalescing이 제대로 되고 있는지 확인해 줘", "Occupancy가 낮은 원인이 레지스터인지 shared memory인지 분석해 줘"라고 요청하고 돌아온 답을 검증할 수 있습니다.
- CS의 기초가 쌓이게 되므로, 향후 어떤 강의를 듣더라도 다 이해가 됩니다. 배열과 연속 메모리, 힙, 정렬, 시간복잡도, 캐시와 메모리 계층, 지연 은닉, 스레드와 스케줄링, 동기화와 경쟁 조건, 부동소수점 오차 등 쉽게 이해하게 됩니다.
- 면접과 발표에서 "왜 이렇게 구현했나요"에 근거를 대며 답할 수 있습니다. 첫 장에서 원리 질문 20개를 받아 답하지 못하는 상태로 기록해 두고, 마지막 장에서 스무 개를 전부 채웁니다. 그대로 면접 답변이 되는 형태로 남습니다.
- "어느부분이 얼마만큼 빨라졌습니다"라고 말할 수 있습니다. 커널 시간을 GPU 시계로 정확히 재고, 달성 대역폭을 계산해 이론 상한과 견주고, 프로파일러가 막힌 상황에서 무엇으로 대신 판정하는지까지 다룹니다.
- 성능이 안 나올 때 어디를 봐야 할지 압니다. 계산이 병목인지 메모리가 병목인지 가르는 기준이 생깁니다.
이 강의의 특징
핵심 강점 (1)
이렇게 원리를 이해하기 쉽게 만든 강의는 없습니다
GPU를 설명하는 자료는 많습니다. 그런데 대부분 용어로 용어를 설명합니다. "워프는 32개 스레드의 묶음이고 SIMT로 실행된다"는 문장을 읽고 나면, 아는 단어가 하나 늘 뿐 그림이 그려지지 않습니다.
이 강의는 정의부터 시작하지 않습니다. 먼저 묻습니다. 이걸 모르면 무엇을 판단하지 못하는가. 워프를 모르면 블록 크기를 왜 32의 배수로 잡는지 고를 수 없고, 메모리 계층을 모르면 느린 코드 앞에서 어디부터 열어야 할지 모릅니다. 그 막막함을 먼저 만든 다음에 정확한 정의를 주고, 마지막에 100만 문서 검색 코드 안에서 그것이 실제로 벌어지는 장면을 보여 줍니다.
용어는 처음 나오는 자리에서 정의하고 영어 원어를 함께 답니다. 배열, 포인터, 시간복잡도, 캐시처럼 "이건 알겠지" 하고 넘어가기 쉬운 것들도 그렇게 합니다. 아는 분께는 한 줄 스쳐 가는 문장이지만, 모르는 분께는 그 한 줄이 강의를 끝까지 들을 수 있게 하는 다리입니다.
핵심 강점 (2)
실습 코드를 그대로 드려서, 실제 원리대로 동작하는 것을 보여 드립니다
설명으로 끝나지 않습니다. 실습 프로그램 15개의 전체 소스와 Makefile을 드립니다. cpu_search, hello_kernel, index_check, device_info, warp_waste, divergence, spill, gpu_search, timing, sync_experiment, reduction, coalesced, stride, bandwidth, occupancy. 각각이 한 가지 원리를 재기 위해 만든 프로그램입니다.
강의에서는 이 프로그램을 빌드하고 실행하는 화면을 그대로 보여 줍니다. 명령 한 줄, 출력 한 줄을 건너뛰지 않습니다. 그래서 실습 환경을 만들지 않고 강의만 들어도 "원리대로 나오는구나"를 눈으로 확인할 수 있고, 직접 돌리고 싶으면 같은 코드를 그대로 쓰면 됩니다.
이런 내용을 배워요
전체 47강이 하나의 흐름으로 이어집니다. CPU와 GPU가 왜 다르게 설계됐는지에서 시작해, 스레드가 어떻게 묶여서 도는지, 값이 어디에 놓이느냐가 왜 시간을 정하는지까지 원리를 순서대로 하나씩 보겠습니다. 그 원리가 실제로 어떻게 동작하는지, 100만 개 문서를 검색하는 프로그램으로 확인합니다.
그래서 순서대로 들으시길 권합니다. 앞 강의에서 확인한 숫자가 뒤 강의에서 성능개선의 판단 기준이 되기 때문입니다. GPU 원리와 CS 지식도 따로 분리해서 배우지 않습니다. 필요할때 바로 그 자리에서 설명해 드립니다.
SECTION 1 · 1~5강
왜 지금 GPU 원리와 CS 지식인가
AI가 코드를 써 주는 시대에 왜 원리를 알아야 하는지부터 짚습니다. 이 과정에서 무엇을 얻어 가는지 먼저 확인하고, 실습 환경을 준비합니다. 실습 환경은 건너뛰어도 강의를 따라가는 데 지장이 없습니다.
- 1AI시대에 GPU원리와 CS지식이 필요한 이유 (1)
- 2AI시대에 GPU원리와 CS지식이 필요한 이유 (2)
- 3AI시대에 GPU원리와 CS지식이 필요한 이유 (3)
- 4이 과정에서 습득할 것
- 5실습 환경 — 건너뛰기 하셔도 됩니다
SECTION 2 · 6~11강
CPU와 GPU는 무엇이 다른가
"GPU는 코어가 많아서 빠르다"로는 GPU가 오히려 느려지는 경우를 설명하지 못합니다. 두 장치가 같은 트랜지스터 예산을 어디에 썼는지를 봅니다. 면접에서 실제로 나오는 질문을 CPU 쪽과 GPU 쪽으로 나눠 따로 다룹니다.
- 6CPU와 GPU의 설계차이 (1)
- 7CPU와 GPU의 설계차이 (2) — 초등학생도 이해할 수 있는 수준
- 8CPU와 GPU의 설계차이 (3) — CPU 면접 질문
- 9CPU와 GPU의 설계차이 (4) — GPU 면접 질문
- 10CPU와 GPU의 설계차이 (5) — 3가지 계산 방법
- 11CPU와 GPU의 설계차이 (6)
SECTION 3 · 12~21강
CS 기초를 쌓고, CPU로 기준을 만든다
벡터를 왜 쓰는지, GPU 메모리가 얼마나 되는지, 쓰레드와 메모리가 어떤 관계인지 짚습니다. 그다음 내적·노름·코사인 유사도를 손 계산으로 확인하고, 정렬과 힙 자료구조를 지나 CPU로 먼저 만들어 기준 시간을 손에 넣습니다. 이 값이 뒤의 모든 배수의 분모가 됩니다.
- 12CS지식 — 벡터를 왜 사용하는가
- 13CS지식 — GPU의 메모리 사이즈
- 14CS지식 — GPU 쓰레드와 메모리
- 15GPU 서버로 실측하기
- 16CS지식 — 내적, 노름, 코사인 유사도 (1)
- 17CS지식 — 내적, 노름, 코사인 유사도 (2)
- 18CPU로 벡터 검색이 느린 이유
- 19CS지식 — 전체 정렬 알고리즘
- 20CS지식 — 부분 정렬 알고리즘과 Heap 자료구조
- 21CPU로 측정하기
SECTION 4 · 22~32강
GPU는 코드를 어떻게 실행하는가
GPU가 잘하는 일과 잘 못하는 일을 가른 다음, CPU와 GPU가 어떻게 협업하는지 봅니다. 커널이 무엇인지 정의하고 실제로 재 본 뒤, 쓰레드부터 시작해 GPU 내부 동작을 다섯 강에 걸쳐 파고듭니다.
- 22GPU가 잘하는 일
- 23GPU가 잘 못하는 일
- 24CS지식 — CPU와 GPU가 어떻게 서로 협업하는가
- 25GPU의 커널이란
- 26커널 실측하기
- 27GPU의 쓰레드
- 28GPU 원리 (1)
- 29GPU 원리 (2)
- 30GPU 원리 (3)
- 31GPU 원리 (4)
- 32GPU 원리 (5)
SECTION 5 · 33~42강
메모리를 알아야 성능이 보인다
값이 어디에 사는지가 시간을 정합니다. 메모리 계층을 세 강에 걸쳐 보고, CPU와 GPU 사이의 데이터 이동을 다룹니다. 커널만 빨라져도 소용없는 이유가 여기서 나옵니다. 시간을 정확히 재는 법과 메모리 최적화, 그리고 동기화·경쟁 조건·부동소수점까지 이어집니다.
- 33GPU의 메모리 계층 (1)
- 34GPU의 메모리 계층 (2)
- 35GPU의 메모리 계층 (3)
- 36CPU-GPU 양쪽 데이터 이동 원리 (1)
- 37CPU-GPU 양쪽 데이터 이동 원리 (2)
- 38CPU-GPU 최적화 하기 — 메모리 상주
- 39성능 측정 — 시간 재기
- 40GPU 메모리 최적화 하기
- 41CS지식 — 동기화와 Race Condition
- 42CS지식 — 리덕션과 부동소수점
SECTION 6 · 43~47강
측정하고 판정하는 사람이 된다
남은 GPU 원리를 마저 다루고, 점유율과 프로파일링 도구로 성능을 판정하는 법을 배웁니다. 취업과 이직, 실제 프로젝트에서 무엇을 근거로 내밀 수 있는지까지 정리하고 마칩니다.
- 43GPU 원리 (6)
- 44GPU 원리 (7)
- 45성능 측정 방법 — 점유율
- 46취업이나 이직 시, 프로젝트에서 사용해야 할 성능 측정 도구
- 47AI에 대체되지 않고 연봉 더 많이 받읍시다
CS 지식은 필요성에 의해 배우게 됩니다
벡터, 내적과 노름, 정렬 알고리즘, 힙 자료구조, 메모리 계층, 동기화와 경쟁 조건, 리덕션, 부동소수점 오차. 목차에서 「CS지식」이 붙은 강의가 그것입니다. 필요에 의해서 왜 그렇게 동작하는지 설명해야 하는 자리에서 나옵니다. 그래서 정확히 기억에 남습니다.
이 강의를 만든 사람
TECHLEAD CRO
테크리드 크로
SK그룹 신입공채 출신의 경력 20년 AI·클라우드 전문가입니다.
NTIS 등록 국가연구개발자로 인공지능 관련 R&D 과제 6건을 수행했고, 컴퓨터 비전·검색엔진·이커머스 추천 시스템 분야에서 특허 7건을 출원해 3건을 등록받았습니다. AI 생성 코드의 가독성, AI 매개 서비스 생태계, AI 시대의 정보 접근성을 주제로 논문을 썼습니다. 2019년 인천중소벤처기업청장상을 수상했습니다.
KT Cloud, 현대모비스, 현대오토에버, 이수그룹, 한국기술교육대학교, 건강보험심사평가원 등에서 Agentic AI, MLOps, 머신러닝·딥러닝, 클라우드 보안 강의를 진행하고 있습니다.
왜 이 강의를 만들었는가
현장에서 대기업을 대상으로 AI 관련 컨설팅을 하다 보면 비슷한 장면을 자주 보게 됩니다. AI에게 코드를 작성시키는 데는 익숙하지만, 그 코드가 제대로 작성된 것인지 판단하는 단계에서 막히는 경우가 많습니다. AI가 "성능이 좋아졌다"고 하면 왜 좋아졌는지 확인하기 어렵고, 반대로 코드가 느려졌을 때는 어디서부터 문제를 찾아야 할지 막막해합니다.
이런 판단을 하려면 결국 GPU가 어떻게 동작하는지, 그리고 그 바탕이 되는 CS 기본 원리를 알아야 합니다. 하지만 대학에서 배운 내용은 시험을 위한 지식으로 남아 있는 경우가 많고, 현업에서도 이런 내용을 실무와 연결해서 다시 배울 기회는 많지 않습니다.
사실 이 과정에서 다루는 내용은 그동안 제가 대기업 AI 컨설팅과 기업 교육 현장에서 필요할 때마다 설명해 왔던 내용을 바탕으로 만들어졌습니다. 일반적인 입문 강의에서는 쉽게 다루지 않고, 실제 프로젝트나 컨설팅에 참여하지 않으면 접하기 어려운 내용도 많이 포함되어 있습니다.
이번에는 그 내용을 특정 기업이나 프로젝트 안에서만 전달하는 데 그치지 않고, 누구나 처음부터 따라가며 배울 수 있는 하나의 과정으로 다시 정리했습니다. GPU를 전공한 사람만 이해할 수 있는 강의가 아니라, AI가 작성한 코드를 직접 이해하고 판단하고 싶은 개발자라면 따라올 수 있도록 기초 개념부터 실제 코드와 성능 측정까지 연결했습니다.
그래서 교재 23개 장과 영상 24강, 실습 프로그램 15개를 직접 만들고, 모든 예제를 GPU 서버에서 직접 실행해 확인했습니다. 강의에서 보여드리는 성능 수치 역시 실제로 코드를 실행해 측정한 결과입니다.
이 과정을 만들면서 세 가지 원칙을 정했습니다.
1. 개념은 가장 기본적인 정의부터 설명할 것
2. 성능에 대한 설명에는 직접 측정한 결과를 함께 보여줄 것
3. 예상과 다른 결과가 나온 실험도 숨기지 않고 그대로 보여줄 것
궁금한 점이 있나요?
Q. 비전공자이고 CS 수업도 들은 적이 없는데 따라갈 수 있을까요?
이 강의는 CS를 배운 적 없는 사람을 기본값으로 놓고 만들었습니다. 배열과 연속메모리, 포인터, 시간복잡도, 캐시는 처음 나오는 자리에서 정의부터 합니다. 그냥 정의만 하고 넘어가지 않고 "이걸 흔히 힙(heap)이라고 부른다"처럼 정식 이름을 함께 달아서, 나중에 혼자 검색해 더 파고들 수 있게 했습니다.
Q. AI가 코드까지 짜 주는 시대인데, 지금 GPU 원리를 배워도 쓸 데가 있을까요?
정확히 반대입니다.
AI가 코드를 못 짜서 원리를 배우는 것이 아닙니다. AI가 코드를 너무 잘 짜기 시작했기 때문에, 이제 사람은 그 코드를 이해하고 더 높은 수준의 일을 시킬 수 있어야 합니다.
원리를 모르면 요청은 "GPU로 빠르게 해 줘"에서 끝납니다. 원리를 알면 "이 커널의 Memory Coalescing이 제대로 되고 있는지 확인해 줘", "Occupancy가 낮은 원인이 레지스터인지 shared memory인지 분석해 줘", "이 커널이 memory-bound인지 compute-bound인지 먼저 판정해 줘"라고 요청하고, 돌아온 답이 맞는지 검증할 수 있습니다. AI가 강해질수록 원리를 아는 사람이 살아남게 됩니다.
Q. 꼭 GPU 컴퓨터로 실습을 해야 하나요? 실습없이 강의만 들어도 이해가 가나요?
네, 이 과정은 실습을 따라하지 않아도, 실제로 실습한 내용을 그대로 강의에서 다 보여주기 때문에 본인이 실습환경을 구축하지 않아도 GPU의 원리와 CS지식을 제대로 배울 수 있습니다. 그냥 듣기만 해도 이해가 되도록 강의를 만들었습니다.
Q. 제컴에 NVIDIA GPU가 없습니다. 강의내용처럼 GPU서버를 빌려서 사용하면 되나요?
이 강의는 애초에 "내 노트북에 GPU가 없다"를 전제로 만들었습니다. 따라서 NVIDIA GPU가 있는 서버를 빌려서 실습합니다.
강의에서, 아주 쉽게 따라할수 있도록 RunPod에서 GPU 서버를 시간 단위로 빌려 SSH로 접속하는 방식을 쓰고, 계정 만들기, 서버 만들기, SSH 키 만들기, 접속, 파일 올리기, 환경 복구까지 화면과 명령을 하나씩 따라갑니다. macOS와 Windows 안내가 둘 다 있습니다.
수강 전 참고 사항
실습 환경
- 내 컴퓨터 — macOS, Windows 모두 가능합니다. NVIDIA GPU가 없어도 됩니다. 터미널에서 SSH로 접속만 하면 되고, 두 운영체제의 절차를 모두 안내합니다.
- GPU 서버 — RunPod에서 시간 단위로 빌립니다. 강의 기준은 RTX 4090 한 장(VRAM 24 GB), 디스크 약 60 GB입니다. 다른 GPU를 쓰셔도 원리는 같고 숫자만 달라지며, 그 차이를 해석하는 법도 다룹니다.
- 소프트웨어 — CUDA Toolkit이 포함된 서버 이미지를 그대로 씁니다. 강의 기준은 CUDA 12.8, 드라이버 570 계열입니다. 설치는 서버 이미지가 해결하므로 별도 설치 과정이 없습니다.
- 비용 — 서버 대여 비용은 수강료와 별도이며 켜 둔 시간만큼 발생합니다. 강의 제작 시점 RTX 4090이 시간당 $0.74였습니다. 실습할 때 만들고 끝나면 지우는 방식과 환경 복구 스크립트를 함께 다룹니다.
학습 자료
- 웹 교재 23개 장 링크 드림 — 영상과 같은 순서이며 더 자세한 정의, 실행 절차, 판독, 확인 문제, 정리가 들어 있습니다.
- 실습 프로그램 15개(project.zip) — cpu_search, hello_kernel, index_check, device_info, warp_waste, divergence, spill, gpu_search, timing, sync_experiment, reduction, coalesced, stride, bandwidth, occupancy. 전체 소스와 Makefile을 드립니다.
- 데이터 생성 스크립트 — 100만 문단을 임베딩해 768차원 float32 벡터 파일(3.07 GB)을 만듭니다.
- 환경 복구 스크립트 — 서버를 지우고 새로 만들어도 몇 분 만에 같은 환경으로 돌아옵니다.
선수 지식 및 유의사항
- GPU가 도대체 어떻게 동작하는것인지 궁금한 분 누구나 전공 여부 무관, C/C++ 경험 무관, CUDA 경험 무관, 자료구조·알고리즘 수강 여부는 상관없습니다. GPU의 원리와 그에 필요한 CS지식을 차근차근 알려드립니다.
- 순서대로 들으시길 권합니다. 하나의 프로그램을 계속 고쳐 나가는 구조라, 앞 장의 실측이 뒷 장의 기준값이 됩니다.
- 이 강의가 다루지 않는 것 — CUDA 문법 암기, PyTorch·vLLM 사용법, 라이브러리 튠업 옵션. 그 아래층의 원리를 다루는 과정입니다.
- 강의 자료의 저작권은 지식공유자에게 있습니다. 실습 코드는 학습 목적으로 자유롭게 수정해 쓰실 수 있으나, 강의 자료의 재배포와 공유는 금지합니다.
AI가 만든 코드를 이해하고, 지시하고, 검증할 수 있는 개발자가 되는 것.
그것이 이 과정의 목적입니다.