-
Notifications
You must be signed in to change notification settings - Fork 33
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #531 from argonne-lcf/level-0
Added Level-Zero documentation.
- Loading branch information
Showing
1 changed file
with
41 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,42 @@ | ||
# Level 0 | ||
# Level-Zero on Aurora | ||
|
||
Placeholder | ||
## Overview | ||
|
||
The objective of the ‘[oneAPI](https://oneapi-spec.uxlfoundation.org/)’ | ||
Level-Zero Application Programming Interface (API) is to provide | ||
direct-to-metal interfaces to offload accelerator devices. Its programming | ||
interface can be tailored to any device needs and can be adapted to support | ||
broader set of languages features such as function pointers, virtual functions, | ||
unified memory, and I/O capabilities. | ||
|
||
## Setting the environment to use Level-Zero on Aurora | ||
|
||
The Intel Programming Environment is the main environment on Aurora. The Intel | ||
Compute Runtime is part of this environment and grants access to Level-Zero. | ||
The Intel Compute Runtime is loaded by default in your environment. | ||
|
||
``` | ||
> module list | ||
Currently Loaded Modules: | ||
1) gcc/11.2.0 3) intel_compute_runtime/release/agama-devel-551 5) libfabric/1.15.2.0 7) cray-libpals/1.3.3 | ||
2) mpich/51.2/icc-all-pmix-gpu 4) oneapi/eng-compiler/2022.12.30.003 6) cray-pals/1.3.3 | ||
``` | ||
|
||
## Building on Aurora | ||
|
||
Level-Zero is a C API that can be used in your application by including the | ||
`ze_api.h` file: | ||
|
||
```C | ||
#include <ze_api.h> | ||
``` | ||
|
||
Application that use the Level-Zero API need to be linked to the Level-Zero | ||
loader library by using the `-lze_loader` linker flag. | ||
|
||
## Level-Zero Documentation | ||
|
||
The Level-Zero documentation can be found here: | ||
[Level-Zero Specification](https://oneapi-src.github.io/level-zero-spec). |