Lecturer

  • 류현곤 차장(NVIDIA Korea)

GPU 아키텍쳐 소개

  • GPU 병렬 프로그래밍을 위한GPU 아키텍쳐를 이해
    1. 시스템 상의 GPU의 구조 이해
    2. GPU chip 하드웨어 구조 이해
    3. block/thread 개념 이해
    4. 하드웨어 아키텍쳐에 따른 latency reduction/hiding 기법 소개

GPU 자동 병렬화

  • OpenACC를 이용한 GPU기반 자동 병렬화 이해
    1. PGI compiler 사용법
    2. kernel 지시어 이해
    3. data 지시어 이해

GPU 병렬 언어 소개

  • Fortran과 C/C++ 에서의 GPU 가속을 위한 CUDA syntax를 이해
    1. Memory 제어 명령
    2. GPU 제어 명령
    3. GPU 병렬화 tool 사용법,
    4. nvvp, cuda profiler, cuda-gdb

GPU를 이용한 이미지프로세싱 기초

  • 이미지 프로세싱에서의 기본 알고리즘을 기반으로 GPU기반 병렬 프로그래밍의 개념을 이해
    1. pixel 기반 color conversion, rotation 예제
    2. histogram을 예제를 통한 병렬의 atomic issue 이해
    3. convolution filter 예제 (blur, edge detection, sharpen)

GPU를 이용한 시뮬레이션

  • 간단한 시뮬레이션 예제 코드를 통해 GPU 병렬화 개념을 이해
  • heat equation을 FDM 기반으로 explicit/implicit GPU 병렬화
  • heat equation을 spectral method의 해법을 cuFFT를 통한 가속

GPU를 이용한 이미지프로세싱

  • 이미지 프로세싱에서의 고급 알고리즘을 기반으로 GPU기반 병렬 프로그래밍을 이해
    1. pixel기반 cross correlation
    2. 2D cuFFT를 이용한 convolution
    3. edge 검출, 불량 검출 알고리즘의 응용

차세대 GPU 아키텍쳐 소개

  • 차세대 GPU 아키텍쳐의 트렌드를 소개
    1. HBM, NVLINK, ARM 아키텍쳐
    2. in-core GPU programming
    3. cache-aware programming