대규모 병렬처리와 CUDA를 소개합니다. 전체적으로 대규모 병렬처리와 CUDA 가 필요한 이유와, 발달해온 과정, 강의 실습을 위한 세팅 등에서 대해서 설명합니다.
무료
25% 할인
11개 남음•전체 구매 적용GPU/그래픽 카드 기반의 대규모 병렬 컴퓨팅은 AI, 딥러닝, 빅데이터 처리, 이미지/영상/음성 처리 등에서 매우 활발하게 사용되고 있어요. 그리고 현재 GPU 병렬 컴퓨팅에서 가장 광범위하게 적용되는 기술이 NVIDIA 사의 CUDA 아키텍처입니다.
병렬 컴퓨팅 중에도 대규모 병렬 컴퓨팅, CUDA (쿠다) 등의 기술이 중요하다는데, CUDA나 병렬 컴퓨팅은 이론적 배경이 필요하고 난이도가 높아요. 또한 이 분야를 체계적으로 가르쳐 주는 강의를 찾기가 어려워서 학습을 시작하기도 힘들죠. 이제 이 로드맵과 함께 CUDA 프로그래밍을 차근차근 배워보세요. 이 강의의 풍부한 예제와 배경지식 설명과 함께 기초부터 따라간다면 충분히 하실 수 있어요!
본 강의에서는 C++/C 프로그래머들이 CUDA 라이브러리와 C++/C 함수들을 조합해서 다양한 분야의 문제를 대규모 병렬 처리 기법으로 가속하는 방법을 설명하고자 합니다. 이 방법을 통해 이미 개발된 C++/C 프로그램들을 가속하거나, 새로운 알고리즘/프로그램을 완전히 병렬 컴퓨팅으로 개발해서 획기적으로 빨라지게 할 수 있습니다.
이런 분들께 추천해요.
😥 취업 전에 신기술에 대한 포트폴리오를 추가하고 싶은 대학생
😎 기존 프로그램을 획기적으로 개선하고 싶은 프로그래머
🥲 다양한 응용 프로그램이 어떻게 고속화되었는지 알고 싶은 전공 연구자
🥲 AI, 딥러닝, 행렬 계산 등의 병렬 처리 이론과 실제를 알고 싶은 분
👉 이 로드맵을 통해 대규모 병렬 처리를 위한 CUDA 프로그래밍을 익힙니다.
0. MPC, CUDA 소개
MPC와 CUDA에 대한 전체적인 소개를 하는 introduction 부분입니다.
1. CUDA kernel 개념
CUDA 프로그래밍의 시작인 CUDA kermel의 개념을 학습하고, 병렬 컴퓨팅이 작동하는 것을 확인하실 수 있습니다.
2. vector addition
1차원 배열 형태인 vector (벡터) 끼리의 연산을 다양한 예제로 제시하고, AXPY 루틴을 실제로 CUDA로 구현합니다.
3. memory hierarchy
CUDA 프로그래밍의 핵심인 메모리 구조를 학습합니다. 예제로 matrix addition, adjacent difference 등을 구현합니다.
4. matrix transpose & multiply
2차원 배열 형태인 matrix(매트릭스, 행렬)끼리의 연산을 다양한 예제로 제시하고, GEMM 루틴을 CUDA로 구현합니다.
5. atomic operation & reduction
CUDA 컨트롤 플로우에 대한 이해와 더불어, atomic operation, reduction 등의 문제 정의부터 해결책까지 학습합니다. GEMV 루틴도 CUDA로 구현합니다.
6. search & sort
CUDA 아키텍처를 이용해서, search-all 문제나 even-odd sort, bitonic sort, counting merge sort 등을 효과적으로 구현하는 예제를 학습합니다.
CUDA와 대규모 병렬 컴퓨팅은 풍부한 예제와 설명이 필요합니다. 이 시리즈 강의에서는 총 24시간 이상의 강의를 제공합니다.
컴퓨터 프로그래밍 과목이라서, 풍부한 실습을 강조하고, 실제 작동하는 source code를 제공해서, 하나하나 따라가면서 해 볼 수 있습니다.
강의 시간에는 이미 설명한 source code 부분에 대해서는 중복 설명을 최대한 배제해서, 바뀐 부분이나, 강조해야 할 부분에만 집중해서 학습할 수 있습니다.
드립커피+한모금더 🐒
★★★★★
꼼꼼한 설명으로 강의를 진행하셔서 한 강좌를 한 번에 수강했습니다.
★★★★★
한국어로 이런 강의 만들어주셔서 감사합니다. 하나씩 정복해보겠습니다.
★★★★★
깔끔하게 설명해주셔서 듣기에 편했습니다. 다음 강의도 기대됩니다.
총 7개 코스
25% 할인
11개 남음•전체 구매 적용CUDA 프로그래밍 (0) - C/C++/GPU 병렬 컴퓨팅 - 공개 샘플 강의
CUDA 프로그래밍 (1) - C/C++/GPU 병렬 컴퓨팅 - CUDA 커널 kernel
CUDA 프로그래밍 (2) - C/C++/GPU 병렬 컴퓨팅 - 벡터 vector 더하기
CUDA 프로그래밍 (3) - C/C++/GPU 병렬 컴퓨팅 - 메모리 구조
CUDA 프로그래밍 (4) - C/C++/GPU 병렬 컴퓨팅 - 행렬 matrix 곱하기
CUDA 프로그래밍 (5) - C/C++/GPU 병렬 컴퓨팅 - 아토믹 연산 atomic op
CUDA 프로그래밍 (6) - C/C++/GPU 병렬 컴퓨팅 - 서치 & 소트