Course Outline

소개

  • ROCm이란 무엇입니까?
  • HIP란 무엇인가요?
  • ROCm 대 CUDA 대 OpenCL
  • ROCm 및 HIP 기능과 아키텍처 개요
  • ROCm for Windows 대 Linux의 ROCm

설치

  • Windows에 ROCm 설치
  • 설치 확인 및 장치 호환성 확인
  • Windows에서 ROCm 업데이트 또는 제거
  • 일반적인 설치 문제 해결

시작하기

  • Windows에서 Visual Studio 코드를 사용하여 새 ROCm 프로젝트 만들기
  • 프로젝트 구조 및 파일 탐색
  • 프로그램 컴파일 및 실행
  • printf 및 fprintf를 사용하여 출력 표시

ROCm API

  • 호스트 프로그램에서 ROCm API 사용
  • 장치 정보 및 기능 쿼리
  • 장치 메모리 할당 및 할당 해제
  • 호스트와 장치 간 데이터 복사
  • 커널 실행 및 스레드 동기화
  • 오류 및 예외 처리

HIP 언어

  • 장치 프로그램에서 HIP 언어 사용
  • GPU에서 실행되고 데이터를 조작하는 커널 작성
  • 데이터 유형, 한정자, 연산자 및 표현식 사용
  • 내장 함수, 변수, 라이브러리 사용

ROCm 및 HIP 메모리 모델

  • 전역, 공유, 상수, 로컬 등 다양한 메모리 공간 사용
  • 포인터, 배열, 텍스처, 표면과 같은 다양한 메모리 개체 사용
  • 읽기 전용, 쓰기 전용, 읽기-쓰기 등과 같은 다양한 메모리 액세스 모드를 사용합니다.
  • 메모리 일관성 모델 및 동기화 메커니즘 사용

ROCm 및 HIP 실행 모델

  • 스레드, 블록, 그리드 등 다양한 실행 모델 사용
  • hipThreadIdx_x, hipBlockIdx_x, hipBlockDim_x 등과 같은 스레드 함수 사용
  • __syncthreads, __threadfence_block 등과 같은 블록 기능 사용
  • hipGridDim_x, hipGridSync, 협동 그룹 등과 같은 그리드 기능을 사용합니다.

디버깅

  • Windows에서 ROCm 및 HIP 프로그램 디버깅
  • Visual Studio 코드 디버거를 사용하여 변수, 중단점, 호출 스택 등을 검사합니다.
  • ROCm 디버거를 사용하여 AMD 장치에서 ROCm 및 HIP 프로그램 디버깅
  • ROCm 프로파일러를 사용하여 AMD 장치에서 ROCm 및 HIP 프로그램 분석

최적화

  • Windows에서 ROCm 및 HIP 프로그램 최적화
  • 병합 기술을 사용하여 메모리 처리량 향상
  • 캐싱 및 프리페칭 기술을 사용하여 메모리 대기 시간 줄이기
  • 공유 메모리 및 로컬 메모리 기술을 사용하여 메모리 액세스 및 대역폭 최적화
  • 프로파일링 및 프로파일링 도구를 사용하여 실행 시간 및 리소스 활용도를 측정하고 개선합니다.

요약 및 다음 단계

Requirements

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

청중

  • Windows에서 ROCm을 설치하고 사용하여 AMDGPU를 프로그래밍하고 병렬성을 활용하는 방법을 배우고자 하는 개발자
  • 다양한 AMD 장치에서 실행될 수 있는 확장 가능한 고성능 코드를 작성하려는 개발자
  • GPU 프로그래밍의 하위 수준 측면을 탐색하고 코드 성능을 최적화하려는 프로그래머
 21 Hours

Number of participants


Price per participant

회원 평가 (2)

Upcoming Courses

Related Categories