이 워크숍에서는 OpenACC를 사용하는 대규모 병렬 GPU에서 실행할 C/C++ 또는 Fortran 애플리케이션을 가속화하는 데 필요한 기본 도구와 기술을 다룹니다. 참가자는 코드 작성 방법, OpenACC를 사용하여 코드 병렬화를 구성하는 방법, CPU와 GPU 가속기 간의 메모리 이동을 최적화하는 방법 등을 익히게 되며, 학습한 워크플로우를 새로운 작업에 적용하여 완전히 작동하는 CPU 전용 Laplace Heat Equation 코드를 가속화함으로써 성능 향상 효과를 확실히 체감하게 될 것입니다. 워크숍이 끝나면 직접 새로운 GPU 가속 애플리케이션을 만들기 위한 추가 리소스에 액세스할 수 있습니다.

 

학습 목표


이 워크숍에 참여하면 OpenACC를 사용하는 GPU 가속 C/C++ 또는 Fortran 애플리케이션을 위한 기본 도구와 기술을 이해하고 다음을 수행할 수 있습니다.
  • CPU 전용 애플리케이션을 프로파일링하고 최적화하여 가속을 위한 지점 식별
  • OpenACC 지시문을 사용하여 코드베이스 GPU 가속화
  • CPU와 GPU 가속기 간의 데이터 이동 최적화

워크숍 데이터시트 다운로드하기(PDF 80.3KB)

워크숍 개요

소개
(15분)
병렬 프로그래밍 소개
(50분)
개념적 방식으로 병렬화에 대해 배우고 OpenACC로 표현하는 방법에 대해 알아보세요. 여기서 다루게 될 주제는 다음과 같습니다.
  • 병렬화 소개
  • OpenACC의 목표
  • OpenACC를 사용한 기본 코드 병렬화
휴식(10분)
OpenACC를 사용한 프로파일링
(50분)
OpenACC 코드를 빌드하고 컴파일하는 방법, 프로파일링의 중요성 및 NVIDIA Nsight Systems 프로파일러를 사용하는 방법을 알아봅니다. 여기서 다루게 될 주제는 다음과 같습니다.
  • 순차 및 OpenACC 코드 컴파일
  • 코드 프로파일링의 중요성
  • 순차 및 OpenACC 멀티코어 코드 프로파일링
  • 소개 모듈에 사용된 코드에 대한 기술적 소개
휴식(45분)
OpenACC 지시문 소개
(50분)
OpenACC 지시문으로 코드를 병렬화하고 병렬, 커널 및 루프 지시문 간의 차이점을 이해하는 방법을 알아봅니다. 여기서 다루게 될 주제는 다음과 같습니다.
  • 병렬 지시문
  • 커널 지시문
  • 루프 지시문
휴식(10분)
OpenACC를 사용한 GPU 프로그래밍
(50분)
GPU와 멀티코어 CPU의 차이점에 대해 알아보고 CUDA 통합 메모리를 통해 메모리를 관리합니다. 여기서 다루게 될 주제는 다음과 같습니다.
  • GPU의 정의
  • 기본 OpenACC 데이터 관리
  • CUDA 통합 메모리
  • GPU 애플리케이션 프로파일링
휴식(15분)
OpenACC를 사용한 데이터 관리
(50분)
OpenACC 데이터 지시문으로 데이터 이동을 명시적으로 관리하여 데이터 전송을 줄이는 방법을 알아봅니다. 여기서 다루게 될 주제는 다음과 같습니다.
  • OpenACC 데이터 지시문/절
  • OpenACC 구조화된 데이터 영역
  • OpenACC 구조화되지 않은 데이터 영역
  • OpenACC 업데이트 지시문
  • C/C++ 구조체/클래스를 사용한 데이터 관리
휴식(10분)
OpenACC를 통해 루프 최적화
(50분)
GPU의 다양한 수준의 병렬화를 이해하고 코드의 루프를 최적화하여 OpenACC로 더 많은 병렬화를 추출하는 방법을 알아봅니다. 여기서 다루게 될 주제는 다음과 같습니다.
  • Seq/Auto 절
  • Independent 절
  • Reduction 절
  • Collapse 절
  • Tile 절
  • Gang, Worker, Vector
휴식(10분)
최종 복습
(60분)
  • 주요 학습 내용을 복습하고 질문에 답합니다.
  • 평가를 완료하고 인증서를 수료합니다.
  • 워크숍 설문지를 작성합니다.
다음 단계 DLI 교육을 통해 학습 계속하기:
 

워크숍 정보

소요 시간: 8시간

가격: 가격 문의

전제 조건:

  • C/C++ 또는 Fortran 관련 지초 지식이 있어야 합니다(변수 유형, 루프, 조건문, 함수 및 어레이 처리에 대한 지식 포함).
  • GPU 프로그래밍 관련 지식은 없어도 무방합니다.

도구, 라이브러리 및 프레임워크: NVIDIA® Nsight, OpenACC

평가 유형:

  • 코드 기반

인증서: 참가자가 평가를 성공적으로 완료하면 관련 분야에 대한 역량을 인정받고 전문적 커리어 성장을 지원하는 NVIDIA DLI 인증서를 받게 됩니다.

하드웨어 요구 사항: 최신 버전의 Chrome 또는 Firefox를 실행할 수 있는 데스크톱 또는 노트북이 필요합니다. 각 참가자에게는 클라우드에서 완전하게 구성된 GPU 가속 워크스테이션에 접근할 수 있는 전용 권한이 주어집니다.

언어: 영어

조직이 AI, 가속 데이터 사이언스, 가속 컴퓨팅 분야의 핵심 기술 능력을 크게 높이고 개발하는 데 관심이 있는 경우 NVIDIA DLI에 전문가 직강 실습 교육을 요청하실 수 있습니다.

질문이 있으신가요?