Course Outline

소개

  • GPU 프로그래밍이란 무엇입니까?
  • GPU 프로그래밍을 사용하는 이유는 무엇입니까?
  • GPU 프로그래밍의 과제와 장단점은 무엇입니까?
  • GPU 프로그래밍을 위한 프레임워크와 도구는 무엇입니까?
  • 애플리케이션에 적합한 프레임워크 및 도구 선택

OpenCL

  • OpenCL란 무엇인가요?
  • OpenCL의 장점과 단점은 무엇입니까?
  • OpenCL 개발 환경 설정
  • 벡터 추가를 수행하는 기본 OpenCL 프로그램 작성
  • OpenCL API를 사용하여 장치 정보 쿼리, 장치 메모리 할당 및 할당 해제, 호스트와 장치 간 데이터 복사, 커널 시작 및 스레드 동기화
  • OpenCL C 언어를 사용하여 장치에서 실행되고 데이터를 조작하는 커널 작성
  • OpenCL 내장 함수, 변수 및 라이브러리를 사용하여 일반적인 작업 및 작업 수행
  • 글로벌, 로컬, 상수, 프라이빗 등 OpenCL 메모리 공간을 사용하여 데이터 전송 및 메모리 액세스 최적화
  • OpenCL 실행 모델을 사용하여 병렬성을 정의하는 작업 항목, 작업 그룹 및 ND 범위를 제어합니다.
  • CodeXL과 같은 도구를 사용하여 OpenCL 프로그램 디버깅 및 테스트
  • 병합, 캐싱, 프리패치 및 프로파일링과 같은 기술을 사용하여 OpenCL 프로그램 최적화

쿠다

  • 쿠다란 무엇인가요?
  • CUDA의 장점과 단점은 무엇입니까?
  • CUDA 개발 환경 설정
  • 벡터 추가를 수행하는 기본 CUDA 프로그램 만들기
  • CUDA API를 사용하여 장치 정보 쿼리, 장치 메모리 할당 및 할당 해제, 호스트와 장치 간 데이터 복사, 커널 실행 및 스레드 동기화
  • CUDA C/C++ 언어를 사용하여 장치에서 실행되고 데이터를 조작하는 커널 작성
  • CUDA 내장 함수, 변수 및 라이브러리를 사용하여 일반적인 작업 및 작업 수행
  • 전역, 공유, 상수 및 로컬과 같은 CUDA 메모리 공간을 사용하여 데이터 전송 및 메모리 액세스 최적화
  • CUDA 실행 모델을 사용하여 병렬성을 정의하는 스레드, 블록 및 그리드 제어
  • CUDA-GDB, CUDA-MEMCHECK 및 NVIDIA Nsight와 같은 도구를 사용하여 CUDA 프로그램 디버깅 및 테스트
  • 병합, 캐싱, 프리패치, 프로파일링과 같은 기술을 사용하여 CUDA 프로그램 최적화

ROCm

  • ROCm이란 무엇입니까?
  • ROCm의 장점과 단점은 무엇입니까?
  • ROCm 개발 환경 설정
  • 벡터 추가를 수행하는 기본 ROCm 프로그램 만들기
  • ROCm API를 사용하여 장치 정보 쿼리, 장치 메모리 할당 및 할당 취소, 호스트와 장치 간 데이터 복사, 커널 실행 및 스레드 동기화
  • ROCm C/C++ 언어를 사용하여 장치에서 실행되고 데이터를 조작하는 커널 작성
  • ROCm 내장 함수, 변수 및 라이브러리를 사용하여 일반적인 작업 및 작업 수행
  • 글로벌, 로컬, 상수, 프라이빗 등 ROCm 메모리 공간을 사용하여 데이터 전송 및 메모리 액세스 최적화
  • ROCm 실행 모델을 사용하여 병렬성을 정의하는 스레드, 블록 및 그리드를 제어합니다.
  • ROCm 디버거 및 ROCm 프로파일러와 같은 도구를 사용하여 ROCm 프로그램 디버깅 및 테스트
  • 병합, 캐싱, 프리패치, 프로파일링과 같은 기술을 사용하여 ROCm 프로그램 최적화

잘 알고 있기

  • HIP란 무엇인가요?
  • HIP의 장점과 단점은 무엇입니까?
  • HIP 개발 환경 설정
  • 벡터 추가를 수행하는 기본 HIP 프로그램 작성
  • HIP 언어를 사용하여 장치에서 실행되고 데이터를 조작하는 커널 작성
  • HIP 내장 함수, 변수 및 라이브러리를 사용하여 일반적인 작업 및 작업 수행
  • 전역, 공유, 상수 및 로컬과 같은 HIP 메모리 공간을 사용하여 데이터 전송 및 메모리 액세스 최적화
  • HIP 실행 모델을 사용하여 병렬성을 정의하는 스레드, 블록 및 그리드를 제어합니다.
  • ROCm 디버거 및 ROCm 프로파일러와 같은 도구를 사용하여 HIP 프로그램 디버깅 및 테스트
  • 병합, 캐싱, 프리패치, 프로파일링과 같은 기술을 사용하여 HIP 프로그램 최적화

비교

  • OpenCL, CUDA, ROCm 및 HIP의 기능, 성능 및 호환성 비교
  • 벤치마크 및 지표를 사용하여 GPU 프로그램 평가
  • GPU 프로그래밍에 대한 모범 사례 및 팁 학습
  • GPU 프로그래밍의 현재 및 미래 동향과 과제 탐색

요약 및 다음 단계

Requirements

  • C/C++ 언어 및 병렬 프로그래밍 개념에 대한 이해
  • 컴퓨터 아키텍처 및 메모리 계층에 대한 기본 지식
  • 명령줄 도구 및 코드 편집기 사용 경험

청중

  • GPU 프로그래밍의 기초와 GPU 애플리케이션 개발을 위한 주요 프레임워크 및 도구를 배우고 싶은 개발자
  • 다양한 플랫폼과 장치에서 실행할 수 있는 이식 가능하고 확장 가능한 코드를 작성하려는 개발자
  • GPU 프로그래밍 및 최적화의 이점과 과제를 탐구하려는 프로그래머
 21 Hours

Number of participants


Price per participant

회원 평가 (2)

Upcoming Courses