没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
ROCm Documentation Documentation
Release latest
Oct 24, 2018
Contents
1 Going to 11: Amping Up the Programming-Language Run-Time Foundation 3
2 Solid Compilation Foundation and Language Support 5
2.1 Quick Start Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.1 Current Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.2 Installation Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.3 Programming Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1.4 ROCm GPU Tunning Guides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.5 GCN ISA Manuals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.6 ROCm API References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.7 ROCm Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.8 ROCm Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1.9 ROCm Compiler SDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.10 ROCm System Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.11 ROCm Virtualization & Containers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.12 Remote Device Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.13 Deep Learning on ROCm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.14 System Level Debug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.15 Tutorial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.16 ROCm Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2 Current Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.1 New features and enhancements in ROCm 1.9.1 . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.1.1 Added DPM support to Vega 7nm . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.1.2 Fix for ‘ROCm profiling’ that used to fail with a “Version mismatch between HSA
runtime and libhsa-runtime-tools64.so.1” error . . . . . . . . . . . . . . . . . . . . 12
2.2.2 New features and enhancements in ROCm 1.9.0 . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.2.1 Preview for Vega 7nm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.2.2 System Management Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.2.3 Improvements to HIP/HCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.2.4 Preview for rocprof Profiling Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.2.5 Preview for rocr Debug Agent rocr_debug_agent . . . . . . . . . . . . . . . . . . . 13
2.2.2.6 New distribution support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.2.7 ROCm 1.9 is ABI compatible with KFD in upstream Linux kernels. . . . . . . . . . 13
2.3 Installation Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3.1 Current ROCm Version: 1.9.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3.2 Hardware Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
i
2.3.2.1 Supported GPUs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3.2.2 Supported CPUs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3.2.3 Not supported or very limited support under ROCm . . . . . . . . . . . . . . . . . 15
2.3.3 Software Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3.3.1 Supported Operating Systems - New operating systems available . . . . . . . . . . 16
2.3.4 Installing from AMD ROCm repositories . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3.4.1 Ubuntu Support - installing from a Debian repository . . . . . . . . . . . . . . . . 16
2.3.4.1.1 First make sure your system is up to date . . . . . . . . . . . . . . . . . . 16
2.3.4.1.2 Add the ROCm apt repository . . . . . . . . . . . . . . . . . . . . . . . 16
2.3.4.1.3 Install . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3.4.1.4 How to un-install from Ubuntu 16.04 or Ubuntu 18.04 . . . . . . . . . . . 18
2.3.4.1.5 Installing development packages for cross compilation . . . . . . . . . . 18
2.3.4.1.6 Removing pre-release packages . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.4.2 CentOS/RHEL 7 (both 7.4 and 7.5) Support . . . . . . . . . . . . . . . . . . . . . 18
2.3.4.2.1 Preparing RHEL 7 for installation . . . . . . . . . . . . . . . . . . . . . 19
2.3.4.2.2 Install and setup Devtoolset-7 . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3.4.2.3 Prepare CentOS/RHEL 7.4 or 7.5 for DKMS Install . . . . . . . . . . . . 19
2.3.4.2.4 Installing ROCm on the system . . . . . . . . . . . . . . . . . . . . . . . 19
2.3.4.2.5 Compiling applications using hcc, hip, etc. . . . . . . . . . . . . . . . . . 20
2.3.4.2.6 How to un-install ROCm from CentOS/RHEL 7.4 and 7.5 . . . . . . . . . 20
2.3.5 Known Issues / Workarounds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3.5.1 Radeon Compute Profiler does not run . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3.5.2 Running OCLPerfCounters test results in LLVM ERROR: out of memory . . . . . 21
2.3.5.3 HipCaffe is supported on single GPU configurations . . . . . . . . . . . . . . . . . 21
2.3.5.4 The ROCm SMI library calls to rsmi_dev_power_cap_set() and
rsmi_dev_power_profile_set() will not work for all but the first gpu in multi-
gpu set ups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3.6 Closed source components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3.7 Getting ROCm source code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3.7.1 Installing repo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3.7.2 Cloning the code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3.8 Installing ROCk-Kernel only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3.9 FAQ on Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4 Programming Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4.1 ROCm Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4.1.1 ROCm, Lingua Franca, C++, OpenCL and Python . . . . . . . . . . . . . . . . . . 22
2.4.1.2 HCC: Heterogeneous Compute Compiler . . . . . . . . . . . . . . . . . . . . . . . 22
2.4.1.3 When to Use HC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4.1.4 HIP: Heterogeneous-Computing Interface for Portability . . . . . . . . . . . . . . 23
2.4.1.5 When to Use HIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4.1.6 OpenCL™: Open Compute Language . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4.1.7 When to Use OpenCL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4.1.8 Anaconda Python With Numba . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4.1.9 Numba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4.1.10 When to Use Anaconda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.4.1.11 Wrap-Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.4.1.12 Table Comparing Syntax for Different Compute APIs . . . . . . . . . . . . . . . . 26
2.4.1.13 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.4.2 HC Programming Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.4.2.1 Platform Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.4.2.2 Compiler Backends . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.4.2.3 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.4.2.4 Ubuntu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.4.2.5 Download HCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
ii
2.4.2.6 Build HCC from source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.4.2.7 Use HCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.4.2.8 Multiple ISA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.4.2.9 CodeXL Activity Logger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.4.3 HC Best Practices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.4.3.1 HCC built-in macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.4.3.2 HC-specific features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.4.3.3 Differences between HC API and C++ AMP . . . . . . . . . . . . . . . . . . . . . 33
2.4.3.4 HCC Profile Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.4.3.4.1 Kernel Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.4.3.4.2 Memory Copy Commands . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.4.3.4.3 Barrier Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.4.3.4.4 Overhead . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.4.3.4.5 Additional Details and tips . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.4.3.5 API documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.4.4 HIP Programing Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.4.5 HIP Best Practices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.4.6 OpenCL Programing Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.4.7 OpenCL Best Practices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.5 ROCm GPU Tuning Guides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.5.1 GFX7 Tuning Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.5.2 GFX8 Tuning Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.5.3 Vega Tuning Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.6 GCN ISA Manuals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.6.1 GCN 1.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.6.2 GCN 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.6.3 Vega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.6.4 Inline GCN ISA Assembly Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.6.4.1 The Art of AMDGCN Assembly: How to Bend the Machine to Your Will . . . . . 39
2.6.4.2 DS Permute Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.6.4.3 Passing Parameters to a Kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.6.4.4 The GPR Counting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.6.4.5 Compiling GCN ASM Kernel Into Hsaco . . . . . . . . . . . . . . . . . . . . . . . 43
2.7 ROCm API References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.7.1 ROCr System Runtime API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.7.2 HCC Language Runtime API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.7.3 HIP Language Runtime API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.7.4 HIP Math API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.7.5 Thrust API Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.7.6 Math Library API’s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.7.7 Deep Learning API’s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.8 ROCm Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.8.1 HCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.8.1.1 Download HCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.8.1.2 Build HCC from source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.8.1.3 Use HCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.8.1.4 Multiple ISA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.8.1.5 CodeXL Activity Logger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.8.1.6 HCC with ThinLTO Linking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.8.2 GCN Assembler and Disassembler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.8.3 GCN Assembler Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.8.4 ROC Profiler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.8.4.1 Download . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.8.4.2 Build . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
iii
剩余170页未读,继续阅读
资源评论
nale_8
- 粉丝: 0
- 资源: 10
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功