You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+14-27Lines changed: 14 additions & 27 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,47 +1,42 @@
1
-
### AMD Heterogeneous System Architecture HSA - HSA Runtime release for AMD 7000 series APUs
1
+
### AMD Heterogeneous System Architecture HSA - HSA Runtime release for AMD Kaveri & Carrizo APUs
2
2
3
-
This package includes the user-mode API interfaces and libraries necessary for host applications to launch compute kernels to available HSA kernel agent. This version implements the 1.0 Final HSA Runtime Programmer's Reference Manual and targets AMD 7000 series APUs on supported platforms. The package is compatible with the 1.0 version of the HSA driver set. See the HSA-docs repository at https://github.com/HSAFoundation/HSA-docs/wiki for more information regarding target platforms, documentation and usage.
3
+
This package includes the user-mode API interfaces and libraries necessary for host applications to launch compute kernels to available HSA kernel agent. This version implements the 1.0 Final HSA Runtime Programmer's Reference Manual and targets AMD Kaveri & Carrizo series APUs on supported platforms. The package is compatible with the 1.6 version of the HSA driver set. See the HSA-docs repository at https://github.com/HSAFoundation/HSA-docs/wiki for more information regarding target platforms, documentation and usage.
4
4
5
5
#### Package Contents
6
6
7
7
* hsa.h - Header file exposing the API interface of the HSA runtime's core functionality.
8
8
* hsa_ext_image.h - Header file exposing the API interface of the HSA runtime's image extension.
9
9
* hsa_ext_finalize.h - Header file exposing the API interface of the HSA runtime's HSAIL Finalization extension.
10
+
* amd_hsa_common.h - AMD internal interface. This file is subject to change without notice.
11
+
* amd_hsa_elf.h - AMD internal interface. This file is subject to change without notice.
12
+
* amd_hsa_kernel_code.h - AMD internal interface. This file is subject to change without notice.
13
+
* amd_hsa_queue.h - AMD internal interface. This file is subject to change without notice.
14
+
* amd_hsa_signal.h - AMD internal interface. This file is subject to change without notice.
10
15
* libhsa-runtime64.so.1 - The 64-bit version of AMD's implementation of the hsa runtime's core functionality.
11
-
* libhsa-runtime-ext64.so.1 - The 64-bit version of AMD's implementation of the hsa runtime's shared library's extended finalizer and images functionality.
12
-
* libhsakmt.so.1 - The 64-bit version of the thunk interface, compatible with the 1.4 version of the HSA-Drivers-Linux-AMD driver set.
16
+
* libhsa-runtime-image64.so.1 - The 64-bit version of AMD's implementation of the hsa runtime's image extension.
17
+
* libhsa-runtime-finalize64.so.1 - The 64-bit version of AMD's implementation of the hsa runtime's finalizer extension.
18
+
* libhsa-runtime-tools64.so.1 - The 64-bit version of HSA debug, trace and profiling support tools for AMD hardware.
13
19
* vector_copy sample - A simple HSA sample illustrating how to load a BRIG module from an ELF container, create and finalize a HSA program and dispatch the resulting HSA kernel.
14
20
15
-
#### Target Platform
16
-
17
-
This release is intended for use with any hardware configuration that contains an AMD 7000 series APU. The motherboards must support the FM2+ socket, run the latest BIOS version and have the IOMMU enabled in the BIOS. The following is a reference hardware configuration that was used for testing purposes:
18
-
19
-
* APU: AMD A10-7850K APU
20
-
* Motherboard: ASUS A88X-PRO motherboard (ATX form factor)
21
-
* OS: Ubuntu 14.04, Fedora 21
22
-
* No discrete GPU present in the system
23
-
24
-
Refer to the https://github.com/HSAFoundation/HSA-docs/wiki/HSA-Platforms-&-Installation wiki page for additional information on platform support.
25
-
26
21
#### Installing and configuring the HSA Runtime
27
22
28
23
Download the HSA-Runtime-AMD from the repository: git clone https://github.com/HSAFoundation/HSA-Runtime-AMD.git
29
24
30
-
Install the appropriate package for the target operating system (Debian on Ubuntu 14.04 or RPM for Fedora 21). The libraries, header files and samples will be installed in the /opt/hsa directory of the system.
25
+
Install the appropriate package for the target operating system. The libraries, header files and samples will be installed in the /opt/hsa directory of the system.
31
26
32
27
Ubuntu 14.04:
33
28
34
-
dpkg -i hsa-runtime_1.0_amd64.deb
29
+
dpkg -i hsa-runtime_1.0.3_amd64.deb
35
30
36
31
Fedora 21:
37
32
38
-
rpm -i hsa-runtime-1.0-0.fc21.x86_64.rpm
33
+
Support for Fedora 21 is not provided in this release or in the associated driver release
39
34
40
35
Applications utilizing the HSA runtime must specify how the runtime is utilized, either as an explicitly loaded shared object or a library that is implicitly linked, and the runtime must be installed correctly for the application to appropriately utilize it. Please refer each application's specific documentation regarding runtime installation.
41
36
42
37
#### HSA Runtime / HSA Driver compatibility
43
38
44
-
The HSA Runtime interacts with the HSA drivers using an interface library, libhsakmt.so.1. The HSA Runtime is dynamically linked with this library, which must be compatible with both the runtime and the HSA driver to properly work. Any executable that uses the HSA runtime library will require that the directory containing a compatible version of libhsakmt.so is specified in the LD_LIBRARY_PATH environment variable. The version of libhsakmt.so.1 compatible with this runtime is available in the 1.4 release of the driver set.
39
+
The HSA Runtime interacts with the HSA drivers using an interface library, libhsakmt.so.1. The HSA Runtime is dynamically linked with this library, which must be compatible with both the runtime and the HSA driver to properly work. Any executable that uses the HSA runtime library will require that the directory containing a compatible version of libhsakmt.so is specified in the LD_LIBRARY_PATH environment variable. The version of libhsakmt.so.1 compatible with this runtime is available in the 1.6 release of the driver set.
45
40
46
41
#### Running the sample - vector_copy ####
47
42
@@ -96,9 +91,6 @@ An unsuccessful execution will indicate the step that failed.
96
91
3.**The kernels that I create using CLOC version 0.7.5 don't work with this runtime. Why is that?**
97
92
* The 0.7.5 version of CLOC generates 1.0 Provisional HSAIL, which is incompatible with the 1.0 Final version of the runtime. CLOC and other HSAIL related tools will need to be updated to the final HSAIL specification before they are compatible.
98
93
99
-
4.**On Fedora 21 queue creation is failing and I get a dmesg error with the following entry "avc: denied { execheap }".**
100
-
* Fedora 21 comes with the SELinux enabled by default. To create an HSA queue, users must be able to set allocated memory executable. To allow a user to do this, disable the SELinux restriction with the following command - `setsebool -P selinuxuser_execheap 1`
101
-
102
94
#### Unimplemented functionality
103
95
104
96
* alloca
@@ -114,16 +106,11 @@ An unsuccessful execution will indicate the step that failed.
114
106
115
107
#### Known Issues
116
108
117
-
* Error handling/reporting during AQL packet processing or execution is not fully supported, as a result the spread of failures may not be localized to the queue.
118
-
* Power-efficient signals (default operation) have some race conditions when used in multiple queues or multiple threads and require HSA_ENABLE_INTERRUPT=0 to eliminate them.
119
109
* Max total coarse grain region limit is 8GB.
120
110
* hsa_agent_get_exception_policies is not implemented.
121
111
* Image import/export/copy/fill only support image created with memory from host accessible region.
122
112
* hsa_system_get_extension_table is not implemented for HSA_EXTENSION_AMD_PROFILER.
123
113
* hsa_ext_program_finalize has the following restrictions:
124
-
* Programs that contain calls to functions defined in a different module are not supported.
125
-
* When the "-g -O0" options (debugger enabled) are specified, only programs with a single module that contains one or more kernel are supported.
126
-
* When the "-g -O0" options (debugger enabled) are specified, global variable debug information is not generated.
127
114
* Control directives provided in a hsa_ext_program_finalize call are ignored.
0 commit comments