Tools & SDKs
Anyway, if you use nonfree drivers, my advice is to download most recent drivers from AMD site & use them instead of currently installed. Also, recent AMD APP SDK (from 2.8 on, if memory serves me right) is shipped apart from GPU driver, so you may try to use it instead of open package. Radeon VII, fresh Mint 19.3 Cinammon (changed to Mate later), downloaded AMD Drivers and installed. Couldn't figure out how to install the opencl part, decided I had best ask doc. Remembered doc already made a thread about this. Followed doc's instructions, but it said can't install, you already have an installation. Perhaps uninstall and run. Testing conducted by AMD Performance Labs as of July 2020, on a test system comprising of an, Intel Core i9-9900K CPU @ 3.60GHz, 32 GB RAM, Asus Strix Z390-E motherboard Windows® 10 for Workstations 64-bit October v. 2004 Update, System BIOS 1.11.1 at default settings, Radeon™ PRO WX 9100, AMD Radeon™ PRO Software for Enterprise 20.Q3.
AMD Optimizing C/C++ Compiler — The AOCC compiler system is a high performance, production quality code generation tool. The AOCC environment provides the developer the essential choices when building and optimizing C, C++, and Fortran applications targeting 32-bit and 64-bit Linux® platforms.
AMD μProf —AMD μProf is a suite of powerful tools that help developers optimize software for performance or power. AMD μProf ’s CPU profiler helps to identify and analyze performance hotspots within an application, library, driver or kernel module. It’s Power profiler provides valuable information on energy characteristics of the application or process, library, kernel module running on CPU, APU or discrete-GPU.
SimNow™ Simulator — SimNow™ Simulator is an AMD64 technology-compatible x86 platform simulator for AMD’s family of processors. It is designed to provide an accurate model of a computer system from the program, OS, and programmer’s point of view. SimNow requires AMD Athlon™ 64 or Opteron™.
AMD Open64 SDK — A set of tools, libraries, documentation and headers that developers can use to create high performing applications that run on Linux® operating systems.
x86 Open64 Compiler System — A high performance, production quality code generation tool designed for high performance parallel computing workloads.
Tools for DMTF DASH — DASH (Desktop and mobile Architecture for System Hardware) is a client management standard released by the DMTF (Distributed Management Task Force). DASH is a web services based standard for secure out-of-band and remote management of desktops and mobile systems. Client systems that support out-of-band management help IT administrators perform tasks independent of the power state of the machine or the state of the operating system.
AMD Ryzen™ Master Monitoring SDK — The AMD RyzenTM Master Monitoring SDK is a public distribution that allows software developers to add processor and memory functions to their own utility in conjunction with AMD AM4 RyzenTM processor products. This SDK is the gold standard for reliable and relevant AMD RyzenTM processor metrics.
2nd gen EPYC I/O Power Management Utility – Utility for systems based on 2nd generation EPYC processors to disable I/O power management.
Libraries
AMD Optimizing CPU Libraries (AOCL) — AOCL are a set of numerical libraries tuned specifically for AMD EPYC™ processor family. They have simple interfaces to take advantage of latest hardware innovations. The tuned implementations of industry standard math libraries enable fast development of scientific and high-performance computing projects.
E-SMI In-band library —The EPYC™ System Management Interface In-band Library, is a C library for Linux that provides a user space interface to AMD CPUs System management features. Using the E-SMI In-band APIs the user should be able to monitor and control the CPU’s Power, Energy and Performance.
ESMI In-band library source code on Github – https://github.com/amd/esmi_ib_library
Amd Opencl 2.0 Driver Windows 10
E-SMI Out-of-band library —The EPYC™ System Management Interface Out-of-band Library, is a C library for Linux that provides a user space interface to AMD CPUs System management features. Using the E-SMI OOB APIs the user should be able to monitor and control the CPU’s Power, Energy, Performance and Temperature.
ESMI OOB library source code on Github – https://github.com/amd/esmi_oob_library
ZenDNN (Zen Deep Neural Network) – ZenDNN (Zen Deep Neural Network) Library accelerates deep learning inference applications on AMD CPUs. This library, which includes APIs for basic neural network building blocks optimized for AMD CPUs, targets deep learning application and framework developers with the goal of improving inference performance on AMD CPUs.
AMD Technologies
AMD Secure Encrypted Virtualization (SEV) — AMD Secure Encrypted Virtualization is a technology that allows cryptographic isolation of virtual machines and the hypervisor
Machine Learning and High Performance Computing Software Stack for AMD GPU v4.1¶
ROCm Binary Package Structure¶
ROCm is a collection of software ranging from drivers and runtimes to libraries and developer tools. In AMD’s package distributions, these software projects are provided as a separate packages. This allows users to install only the packages they need, if they do not wish to install all of ROCm. These packages will install most of the ROCm software into /opt/rocm/
by default.
The packages for each of the major ROCm components are:
ROCm Core Components¶
ROCk Kernel Driver:
rock-dkmsrock-dkms-firmware
ROCr Runtime:
hsa-rocr-dev
ROCt Thunk Interface:
hsakmt-roct
,hsakmt-roct-dev
ROCm Support Software¶
ROCm SMI:
rocm-smi
ROCm cmake:
rocm-cmake
rocminfo:
rocminfo
ROCm Bandwidth Test:
rocm_bandwidth_test
ROCm Compilers¶
Clang compiler:
llvm-amdgpu
HIP:
hip_base
,hip_doc
,hip_rocclr
,hip_samples
ROCM Clang-OCL Kernel Compiler:
rocm-clang-ocl
ROCm Device Libraries¶
ROCm Device Libraries:
rocm-device-libs
ROCm OpenCL:
rocm-opencl
,rocm-opencl-devel
(on RHEL/CentOS),rocm-opencl-dev
(on Ubuntu)
ROCm Development ToolChain¶
Asynchronous Task and Memory Interface (ATMI):
atmi
ROCm Debug Agent:
rocm_debug_agent
ROCm Code Object Manager:
comgr
ROC Profiler:
rocprofiler-dev
ROC Tracer:
roctracer-dev
ROCm Libraries¶
rocALUTION:
rocalution
rocBLAS:
rocblas
hipBLAS:
hipblas
hipCUB:
hipCUB
rocFFT:
rocfft
rocRAND:
rocrand
rocSPARSE:
rocsparse
hipSPARSE:
hipsparse
ROCm SMI Lib:
rocm-smi-lib64
rocThrust:
rocThrust
MIOpen:
MIOpen-HIP
(for the HIP version),MIOpen-OpenCL
(for the OpenCL version)MIOpenGEMM:
miopengemm
MIVisionX:
mivisionx
RCCL:
rccl
To make it easier to install ROCm, the AMD binary repositories provide a number of meta-packages that will automatically install multiple other packages. For example, rocm-dkms
is the primary meta-package that is used to install most of the base technology needed for ROCm to operate. It will install the rock-dkms
kernel driver, and another meta-package (rocm-dev
) which installs most of the user-land ROCm core components, support software, and development tools.
The rocm-utils meta-package will install useful utilities that, while not required for ROCm to operate, may still be beneficial to have. Finally, the rocm-libs meta-package will install some (but not all) of the libraries that are part of ROCm.
The chain of software installed by these meta-packages is illustrated below:
These meta-packages are not required but may be useful to make it easier to install ROCm on most systems.
Note: Some users may want to skip certain packages. For instance, a user that wants to use the upstream kernel drivers (rather than those supplied by AMD) may want to skip the rocm-dkms and rock-dkms packages. Instead, they could directly install rocm-dev.
Similarly, a user that only wants to install OpenCL support instead of HCC and HIP may want to skip the rocm-dkms and rocm-dev packages. Instead, they could directly install rock-dkms, rocm-opencl, and rocm-opencl-dev and their dependencies.
ROCm Platform Packages¶
The following platform packages are for ROCm v4.1.0:
Drivers, ToolChains, Libraries, and Source Code¶
The latest supported version of the drivers, tools, libraries and source code for the ROCm platform have been released and are available from the following GitHub repositories:
ROCm Core Components
ROCm Support Software
ROCm Compilers
Example Applications:
Amd Opencl Driver Download
ROCm Device Libraries and Tools
ROCm Libraries
List of ROCm Packages for Supported Operating Systems¶
ROCm-Library Meta Packages¶
Amd Opencl Driver Ubuntu
Package | Debian | RPM |
---|---|---|
rocFFT | Yes | Yes |
rocRAND | Yes | Yes |
rocBLAS | Yes | Yes |
rocSPARSE | Yes | Yes |
rocALUTION | Yes | Yes |
rocPRIM | Yes | Yes |
rocTHRUST | Yes | Yes |
rocSOLVER | Yes | Yes |
hipBLAS | Yes | Yes |
hipSPARSE | Yes | Yes |
hipcub | Yes | Yes |
Meta Packages¶
Amd Drivers Opencl.dll
Package | Debian | RPM |
---|---|---|
ROCm Master Package | rocm | rocm-1.6.77-Linux.rpm |
ROCm Developer Master Package | rocm-dev | rocm-dev-1.6.77-Linux.rpm |
ROCm Libraries Master Package | rocm-libs | rocm-libs-1.6.77-Linux.rpm |
ATMI | atmi | atmi-0.3.7-45-gde867f2-Linux.rpm |
HIP Core | hip_base | hip_base-1.2.17263.rpm |
HIP Documents | hip_doc | hip_doc-1.2.17263.rpm |
HIP Compiler | hip_hcc | hip_hcc-1.2.17263.rpm |
HIP Samples | hip_samples | hip_samples-1.2.17263.rpm. |
HIPBLAS | hipblas | hipblas-0.4.0.3-Linux.rpm |
MIOpen OpenCL Lib | miopen-opencl. | MIOpen-OpenCL-1.0.0-Linux.rpm |
rocBLAS | rocblas | rocblas-0.4.2.3-Linux.rpm |
rocFFT | rocfft | rocm-device-libs-0.0.1-Linux.rpm |
ROCm Device Libs | rocm-device-libs | rocm-device-libs-0.0.1-Linux.rpm |
ROCm OpenCL for Dev with CL headers | rocm-opencl-dev | rocm-opencl-devel-1.2.0-1424893.x86_64.rpm |
ROCm GDB | rocm-gdb | rocm-gdb-1.5.265-gc4fb045.x86_64.rpm |
RCP profiler | rocm-profiler | rocm-profiler-5.1.6386-gbaddcc9.x86_64.rpm |
ROCm SMI Tool | rocm-smi | rocm-smi-1.0.0_24_g68893bc-1.x86_64.rpm |
ROCm Utilities | rocm-utils | rocm-utils-1.0.0-Linux.rpm |