ROCm for Windows 교육 과정
ROCm은 AMD GPU을 지원하고 CUDA 및 OpenCL과의 호환성을 제공하는 GPU 프로그래밍을 위한 오픈 소스 플랫폼입니다. ROCm은 프로그래머에게 하드웨어 세부 정보를 제공하고 병렬화 프로세스에 대한 완전한 제어권을 제공합니다. 그러나 이를 위해서는 장치 아키텍처, 메모리 모델, 실행 모델 및 최적화 기술에 대한 올바른 이해도 필요합니다.
ROCm for Windows는 개인용 및 업무용으로 널리 사용되는 ROCm을 Windows 운영 체제에 사용자가 설치하고 사용할 수 있도록 하는 최근 개발입니다. ROCm for Windows를 통해 사용자는 인공 지능, 게임, 그래픽 및 과학 컴퓨팅과 같은 다양한 애플리케이션에 AMD GPU의 성능을 활용할 수 있습니다.
이 강사가 진행하는 라이브 교육(온라인 또는 현장)은 Windows에 ROCm을 설치 및 사용하여 AMD GPU을 프로그래밍하고 병렬성을 활용하려는 초급부터 중급 개발자를 대상으로 합니다.
이 교육이 끝나면 참가자는 다음을 수행할 수 있습니다.
- Windows에서 ROCm 플랫폼, AMD GPU 및 Visual Studio 코드를 포함하는 개발 환경을 설정합니다.
- GPU에 벡터 추가를 수행하고 GPU 메모리에서 결과를 검색하는 기본 ROCm 프로그램을 만듭니다.
- ROCm API를 사용하여 장치 정보를 쿼리하고, 장치 메모리를 할당 및 할당 해제하고, 호스트와 장치 간에 데이터를 복사하고, 커널을 시작하고, 스레드를 동기화합니다.
- HIP 언어를 사용하여 GPU에서 실행되고 데이터를 조작하는 커널을 작성합니다.
- HIP 내장 함수, 변수 및 라이브러리를 사용하여 일반적인 작업 및 작업을 수행합니다.
- 글로벌, 공유, 상수 및 로컬과 같은 ROCm 및 HIP 메모리 공간을 사용하여 데이터 전송 및 메모리 액세스를 최적화합니다.
- ROCm 및 HIP 실행 모델을 사용하여 병렬성을 정의하는 스레드, 블록 및 그리드를 제어합니다.
- ROCm 디버거 및 ROCm 프로파일러와 같은 도구를 사용하여 ROCm 및 HIP 프로그램을 디버그하고 테스트합니다.
- 병합, 캐싱, 프리패치, 프로파일링과 같은 기술을 사용하여 ROCm 및 HIP 프로그램을 최적화합니다.
코스의 형식
- 대화형 강의 및 토론.
- 많은 연습과 연습.
- 라이브 랩 환경에서 직접 구현합니다.
코스 맞춤화 옵션
- 이 과정에 대한 맞춤형 교육을 요청하려면 당사에 연락하여 예약하시기 바랍니다.
코스 개요
소개
- 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 프로그램 최적화
- 병합 기술을 사용하여 메모리 처리량 향상
- 캐싱 및 프리페칭 기술을 사용하여 메모리 대기 시간 줄이기
- 공유 메모리 및 로컬 메모리 기술을 사용하여 메모리 액세스 및 대역폭 최적화
- 프로파일링 및 프로파일링 도구를 사용하여 실행 시간 및 리소스 활용도를 측정하고 개선합니다.
요약 및 다음 단계
요건
- C/C++ 언어 및 병렬 프로그래밍 개념에 대한 이해
- 컴퓨터 아키텍처 및 메모리 계층에 대한 기본 지식
- 명령줄 도구 및 코드 편집기 사용 경험
- Windows 운영 체제 및 PowerShell에 대한 지식
청중
- Windows에서 ROCm을 설치하고 사용하여 AMDGPU를 프로그래밍하고 병렬성을 활용하는 방법을 배우고자 하는 개발자
- 다양한 AMD 장치에서 실행될 수 있는 확장 가능한 고성능 코드를 작성하려는 개발자
- GPU 프로그래밍의 하위 수준 측면을 탐색하고 코드 성능을 최적화하려는 프로그래머
오픈 트레이닝 코스는 5명 이상의 참가자가 필요합니다.
ROCm for Windows 교육 과정 - 예약
ROCm for Windows 교육 과정 - 문의
ROCm for Windows - 컨설팅 문의
컨설팅 문의
예정된 코스
관련 코스
Huawei Ascend 및 CANN을 사용하여 AI 애플리케이션 개발
21 시간Huawei Ascend는 고성능 추론 및 학습을 위한 AI 프로세서 제품군입니다.
이 강사는 중간 수준의 AI 엔지니어와 데이터 과학자가 Huawei의 Ascend 플랫폼과 CANN 툴킷을 사용하여 신경망 모델을 개발하고 최적화할 수 있도록 돕습니다. 온라인 또는 현장 강의가 가능합니다.
이 교육을 통해 참가자들은 다음과 같은 능력을 갖추게 됩니다:
- CANN 개발 환경을 설정하고 구성합니다.
- MindSpore와 CloudMatrix 워크플로우를 사용하여 AI 애플리케이션을 개발합니다.
- 사용자 정의 연산자와 타일링을 사용하여 Ascend NPU에서 성능을 최적화합니다.
- 모델을 엣지 또는 클라우드 환경에 배포합니다.
수업 형식
- 상호작용을 위한 강의 및 토론.
- Huawei Ascend와 CANN 툴킷을 예제 애플리케이션에 적용하는 실습.
- 모델 빌딩, 학습 및 배포에 중점을 둔 안내 연습.
수업 맞춤화 옵션
- 인프라나 데이터셋에 맞춰 이 강의를 맞춤형으로 요청하려면, 연락처 주시기 바랍니다.
AI 모델을 CANN와 Ascend AI 프로세서로 배포하기
14 시간CANN (Compute Architecture for Neural Networks)는 Ascend AI 프로세서에서 AI 모델을 배포하고 최적화하기 위한 화웨이의 AI 계산 스택입니다.
이 강사는 중급 AI 개발자 및 엔지니어를 대상으로 합니다. 그들은 CANN 툴킷과 MindSpore, TensorFlow, 또는 PyTorch와 같은 도구를 사용하여 학습된 AI 모델을 Huawei Ascend 하드웨어에 효율적으로 배포하기를 원합니다.
이 훈련을 마치면 참가자들은 다음을 할 수 있습니다.
- CANN 아키텍처와 AI 배포 파이프라인에서 그 역할을 이해합니다.
- 인기 프레임워크에서 모델을 Ascend 호환 형식으로 변환하고 적응합니다.
- ATC, OM 모델 변환, MindSpore와 같은 도구를 사용하여 엣지 및 클라우드 추론에 사용합니다.
- 배포 문제를 진단하고 Ascend 하드웨어에서 성능을 최적화합니다.
강의 형식
- 상호작용 강의 및 데모
- CANN 도구 및 Ascend 시뮬레이터 또는 장치를 사용하는 실습 랩 작업
- 실제 세계의 AI 모델에 기반한 실용적인 배포 시나리오
강의 커스터마이징 옵션
- 이 강의를 위한 맞춤형 교육을 요청하려면, 연락 주시기 바랍니다.
GPU Programming Biren AI 가속기
21 시간비렌 AI 가속기는 AI 및 HPC 워크로드에 최적화된 고성능 GPU로, 대규모 학습 및 추론을 지원합니다.
이 강의는 비렌의 고유한 GPU 스택을 활용하여 CUDA 기반 환경과 실질적인 비교를 통해 응용 프로그램을 프로그래밍하고 최적화하고자 하는 중급에서 고급 개발자를 대상으로 합니다.
이 강의를 마치면 참가자들은 다음과 같은 능력을 갖추게 됩니다:
- 비렌 GPU 아키텍처와 메모리 계층을 이해합니다.
- 개발 환경을 설정하고 비렌의 프로그래밍 모델을 사용합니다.
- CUDA 스타일 코드를 비렌 플랫폼에 맞게 번역하고 최적화합니다.
- 성능 튜닝 및 디버깅 기법을 적용합니다.
수업 형식
- 상호작용형 강의 및 토론.
- 샘플 GPU 워크로드에서 비렌 SDK를 직접 사용합니다.
- 포팅 및 성능 튜닝에 중점을 둔 안내된 연습.
수업 맞춤화 옵션
- 응용 프로그램 스택 또는 통합 요구 사항에 맞춘 이 수업에 대한 맞춤형 강의를 요청하려면, 커스터마이징을 위해 문의해 주세요.
Cambricon MLU Development with BANGPy and Neuware
21 시간Cambricon MLUs (Machine Learning 유닛)은 엣지 및 데이터 센터 시나리오에서 추론 및 학습을 위한 최적화된 전문 AI 칩입니다.
이 강사는 BANGPy 프레임워크와 Neuware SDK를 사용하여 Cambricon MLU 하드웨어에서 AI 모델을 구축하고 배포하고자 하는 중급 개발자를 대상으로 하는 온라인 또는 오프라인에서 진행되는 강의입니다.
이 강의가 끝나면 참가자들은 다음과 같은 작업을 할 수 있게 됩니다:
- BANGPy와 Neuware 개발 환경을 설정하고 구성합니다.
- Python 및 C++ 기반 모델을 Cambricon MLU에 개발하고 최적화합니다.
- Neuware 런타임을 실행하는 엣지 및 데이터 센터 장치에 모델을 배포합니다.
- MLU 특화 가속 기능을 사용한 ML 워크플로를 통합합니다.
강의 형식
- 상호작용 강의 및 토론.
- BANGPy와 Neuware를 개발 및 배포에 직접 사용하는 실습.
- 최적화, 통합 및 테스트에 중점을 둔 지도 연습.
강의 맞춤화 옵션
- 강의를 Cambricon 장치 모델 또는 사용 사례에 맞게 맞춤화한 교육을 요청하려면, 연락하여 조정을 신청하십시오.
인공지능 프레임워크 개발자를 위한 CANN 소개
7 시간CANN (Compute Architecture for Neural Networks)은 Ascend AI 프로세서에서 AI 모델을 컴파일, 최적화 및 배포하기 위해 사용되는 화웨이의 AI 컴퓨팅 툴킷입니다.
이 강사는 초보 AI 개발자가 CANN가 학습부터 배포까지의 모델 라이프사이클에 어떻게 맞는지 이해하고, MindSpore, TensorFlow, 그리고 PyTorch와 같은 프레임워크와 어떻게 작동하는지 알 수 있도록 온라인 또는 현장 강의를 진행합니다.
이 교육을 통해 참가자들은 다음을 할 수 있게 됩니다:
- CANN 툴킷의 목적과 구조를 이해합니다.
- CANN와 MindSpore로 개발 환경을 설정합니다.
- 간단한 AI 모델을 Ascend 하드웨어에 변환하고 배포합니다.
- 향후 CANN 최적화 또는 통합 프로젝트에 대한 기초 지식을 습득합니다.
코스 형식
- 상호작용 강의 및 토론.
- 간단한 모델 배포를 위한 실습.
- CANN 툴체인과 통합 포인트에 대한 단계별 설명.
코스 커스터마이징 옵션
- 이 코스의 맞춤형 교육을 요청하려면, 커스터마이징을 위해 문의하세요.
CANN for Edge AI 배포
14 시간화웨이의 Ascend CANN 툴킷은 Ascend 310과 같은 엣지 디바이스에서 강력한 AI 추론을 가능하게 합니다. CANN는 컴퓨팅과 메모리가 제한된 환경에서 모델을 컴파일, 최적화하고 배포할 수 있는 필수 도구를 제공합니다.
이 강사는 중급 AI 개발자 및 통합자를 대상으로, Ascend 엣지 디바이스에서 CANN 툴체인을 사용하여 모델을 배포하고 최적화하는 방법을 배울 수 있는 온라인 또는 현장 실습 수업을 제공합니다.
이 수업을 마친 후 참가자들은 다음을 할 수 있게 됩니다:
- CANN 도구를 사용하여 Ascend 310용 AI 모델을 준비하고 변환합니다.
- MindSpore Lite와 AscendCL을 사용하여 가벼운 추론 파이프라인을 구축합니다.
- 제한된 컴퓨팅 및 메모리 환경에서 모델 성능을 최적화합니다.
- 실제 엣지 사용 사례에서 AI 애플리케이션을 배포하고 모니터링합니다.
강좌 형식
- 상호작용 강의와 시연.
- 엣지 특화 모델과 시나리오를 위한 실습 작업.
- 가상 또는 물리적 엣지 하드웨어에 대한 실시간 배포 예시.
강좌 커스터마이징 옵션
- 이 강좌를 커스터마이징하려면, 커스터마이징을 요청하려면 문의하여 주십시오.
하우웨이의 AI 컴퓨팅 스택 이해: CANN부터 MindSpore까지
14 시간화웨이의 AI 스택은 CANN SDK부터 MindSpore 프레임워크까지 Ascend 하드웨어에 최적화된 AI 개발 및 배포 환경을 제공합니다.
이 강사는 초보자에서 중급 수준의 기술 전문가들을 대상으로, CANN과 MindSpore 구성 요소가 AI 라이프사이클 관리와 인프라 결정 지원을 어떻게 통합하는지 이해하는 데 중점을 둡니다.
이 교육을 통해 참가자들은 다음을 할 수 있게 됩니다.
- 화웨이의 AI 계산 스택의 계층형 아키텍처를 이해합니다.
- CANN이 모델 최적화와 하드웨어 수준의 배포를 어떻게 지원하는지 확인합니다.
- MindSpore 프레임워크와 도구 체인을 업계 대안과 비교하여 평가합니다.
- 화웨이의 AI 스택을 기업 또는 클라우드/온프레미스 환경에 배치합니다.
수업 형식
- 상호작용 강의 및 토론.
- 라이브 시스템 데모 및 사례 기반 워크스루.
- MindSpore에서 CANN로의 모델 흐름에 대한 선택적 안내형 실습.
수업 맞춤화 옵션
- 이 강의를 맞춤형 교육으로 요청하려면, 연락 주시기 바랍니다.
CANN SDK를 이용한 신경망 성능 최적화
14 시간CANN SDK (Neural Networks 계산 아키텍처용)는 Ascend AI 프로세서에서 배포된 신경망의 성능을 미세 조정하고 최적화할 수 있도록 개발자에게 AI 계산 기반을 제공하는 화웨이의 솔루션입니다.
이 인스트럭터 리드 라이브 트레이닝(온라인 또는 오프라인)은 CANN의 고급 도구 세트를 사용하여 추론 성능을 최적화하고자 하는 고급 수준의 AI 개발자와 시스템 엔지니어를 대상으로 합니다. Graph Engine, TIK 및 사용자 정의 오퍼레이터 개발을 포함합니다.
이 트레이닝을 통해 참가자들은 다음을 할 수 있게 됩니다:
- CANN의 런타임 아키텍처와 성능 라이프사이클을 이해합니다.
- 성능 분석 및 최적화를 위해 프로파일링 도구와 Graph Engine을 사용합니다.
- TIK와 TVM을 사용하여 사용자 정의 오퍼레이터를 생성하고 최적화합니다.
- 메모리 병목 현상을 해결하고 모델 처리량을 개선합니다.
코스 형식
- 상호작용형 강의 및 토론.
- 실시간 프로파일링 및 오퍼레이터 조정 실습.
- 엣지 케이스 배포 예제를 사용하여 최적화 연습.
코스 맞춤화 옵션
- 이 코스에 대한 맞춤형 트레이닝을 요청하려면 연락 주세요.
SDK for Ascend and NLP Pipelines
14 시간CANN SDK (Neural Networks을 위한 컴퓨팅 아키텍처)는 특히 Huawei Ascend 하드웨어에서 실시간 AI 애플리케이션을 위한 컴퓨터 비전과 NLP를 위한 강력한 배포 및 최적화 도구를 제공합니다.
이 강사는 중급 수준의 AI 전문가가 CANN SDK를 사용하여 비전 및 언어 모델을 구축, 배포 및 최적화하여 생산 환경에서 사용할 수 있도록 하는 온라인 또는 오프라인 교육과정입니다.
이 교육을 통해 참가자는 다음을 할 수 있게 됩니다.
- CANN와 AscendCL을 사용하여 CV 및 NLP 모델을 배포 및 최적화합니다.
- CANN 도구를 사용하여 모델을 변환하고 라이브 파이프라인에 통합합니다.
- 탐지, 분류 및 감정 분석과 같은 작업을 위한 추론 성능을 최적화합니다.
- 엣지 또는 클라우드 기반 배포 시나리오를 위한 실시간 CV/NLP 파이프라인을 구축합니다.
강의 형식
- 상호작용 강의 및 데모.
- 모델 배포 및 성능 프로파일링을 위한 실습.
- 실제 CV 및 NLP 사용 사례를 사용하여 라이브 파이프라인 설계.
강의 맞춤화 옵션
- 이 강의를 위한 맞춤형 교육을 요청하려면 문의하여 조치해 주세요.
CANN TIK 및 TVM을 사용하여 사용자 지정 AI 연산자 구축
14 시간CANN TIK (텐서 명령어 커널) 및 Apache TVM은 AI 모델 연산자의 고급 최적화 및 사용자 정의를 위한 Huawei Ascend 하드웨어를 가능하게 합니다.
이 강사는 시스템 개발자들이 CANN의 TIK 프로그래밍 모델과 TVM 컴파일러 통합을 사용하여 AI 모델의 사용자 정의 연산자를 구축, 배포 및 튜닝할 수 있도록 합니다.
이 강좌를 통해 참가자들은 다음을 할 수 있게 됩니다:
- TIK DSL을 사용하여 Ascend 프로세서용 사용자 정의 AI 연산자를 작성하고 테스트합니다.
- 사용자 정의 연산자를 CANN 런타임과 실행 그래프에 통합합니다.
- TVM을 사용하여 연산자 일정 조정, 자동 튜닝 및 벤치마킹을 수행합니다.
- 사용자 정의 계산 패턴에 대한 명령어 수준 성능을 디버깅하고 최적화합니다.
강좌 형식
- 상호작용식 강의 및 데모.
- TIK 및 TVM 파이프라인을 사용하여 연산자를 코딩하는 실습.
- Ascend 하드웨어 또는 시뮬레이터에서 테스트 및 튜닝.
강좌 사용자 정의 옵션
- 이 강좌의 사용자 정의 교육을 요청하려면, 문의하여 조정하세요.
CUDA 애플리케이션을 중국 GPU 아키텍처로 마이그레이션
21 시간중국 GPU 아키텍처인 Huawei Ascend, Biren, Cambricon MLU는 현지 AI 및 HPC 시장을 위한 CUDA 대안으로 제공됩니다.
이 강사는 온라인 또는 현장에서 진행되는 실시간 강의로, CUDA 애플리케이션을 중국 하드웨어 플랫폼에 배포하기 위해 기존 CUDA 애플리케이션을 마이그레이션하고 최적화하려는 고급 수준의 GPU 프로그래머와 인프라 전문가를 대상으로 합니다.
이 교육을 마치면 참가자들은 다음과 같은 작업을 수행할 수 있게 됩니다:
- 기존 CUDA 작업 부하가 중국 칩 대안과의 호환성을 평가합니다.
- CUDA 코드베이스를 Huawei CANN, Biren SDK, Cambricon BANGPy 환경으로 포팅합니다.
- 플랫폼 간 성능을 비교하고 최적화 지점을 식별합니다.
- 다양한 아키텍처를 지원하고 배포하는 데 있어 실질적인 도전 과제를 해결합니다.
강좌 형식
- 상호작용 강의 및 토론
- 코드 변환 및 성능 비교 실습
- 다중 GPU 적응 전략에 중점을 둔 유도 연습
강좌 맞춤화 옵션
- 플랫폼이나 CUDA 프로젝트에 맞춘 이 강좌에 대한 맞춤형 교육을 요청하려면, 연락을 취하여 조율하십시오.
Performance Optimization on Ascend, Biren, and Cambricon
21 시간아센드, 바이렌, 캄브리콘은 중국에서 선두를 다투는 AI 하드웨어 플랫폼으로, 각 플랫폼은 생산 규모의 AI 워크로드에 대한 고유한 가속화 및 프로파일링 도구를 제공합니다.
이 강사는 중국의 여러 AI 칩 플랫폼에서 모델 추론 및 학습 워크플로우를 최적화하려는 고급 AI 인프라 및 성능 엔지니어들을 대상으로 하는 인스트럭터 리드, 라이브 교육(온라인 또는 현장)입니다.
이 교육을 마친 후 참가자는 다음을 할 수 있게 됩니다:
- 아센드, 바이렌, 캄브리콘 플랫폼에서 모델을 벤치마킹합니다.
- 시스템 병목 현상과 메모리/컴퓨팅 효율성을 식별합니다.
- 그래프 수준, 커널 수준, 연산자 수준 최적화를 적용합니다.
- 배포 파이프라인을 튜닝하여 처리량과 지연 시간을 개선합니다.
강의 형식
- 상호작용 강의 및 토론.
- 각 플랫폼에서 프로파일링 및 최적화 도구를 사용하는 실습.
- 실제 튜닝 시나리오에 초점을 맞춘 안내된 연습.
강의 맞춤화 옵션
- 성과 환경 또는 모델 유형에 맞춰 이 강의에 대한 맞춤형 교육을 요청하려면, 성능 환경이나 모델 유형을 기반으로 맞춤형 교육을 신청하시려면 연락주세요.