Skip to content

Commit 98c5488

Browse files
[SYCL][ESIMD][DOC] Update on CM_RT_PLATFORM for ESIMD Emulator (#7696)
- Environment variable update : SYCL_DEVICE_FILTER to ONEAPI_DEVICE_SELECTOR
1 parent 0299ac1 commit 98c5488

File tree

1 file changed

+27
-9
lines changed

1 file changed

+27
-9
lines changed

sycl/doc/extensions/experimental/sycl_ext_intel_esimd/esimd_emulator.md

Lines changed: 27 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,29 @@ during ESIMD_EMULATOR plug-in software module generation. Details on
4444
building CM_EMU library for ESIMD_EMULATOR such as required packages
4545
are described in [ESIMD CPU Emulation](https://github.com/intel/llvm/blob/sycl/sycl/doc/GetStartedGuide.md#build-dpc-toolchain-with-support-for-esimd-cpu-emulation)
4646

47-
## Command line option / environment variable options
48-
49-
There is no special command line option or environment variable
50-
required for building and running ESIMD kernels with ESIMD_EMULATOR
51-
backend.
47+
## Environment variable
48+
49+
For running ESIMD kernels with the ESIMD_EMULATOR backend, the CM_EMU
50+
library requires 'CM_RT_PLATFORM' environment variable set in order to
51+
specify the target platform you want to emulate.
52+
53+
> `$ export CM_RT_PLATFORM=SKL`
54+
55+
List of target platforms supported by CM_EMU is as follows
56+
57+
- SKL
58+
- BXT
59+
- KBL
60+
- ICLLP
61+
- TGLLP
62+
- RKL
63+
- DG1
64+
- ADLP
65+
- ADLS
66+
- ADLN
67+
- DG2
68+
- MTL
69+
- PVC
5270

5371
## Running ESIMD code under emulation mode
5472

@@ -64,15 +82,15 @@ To compile using Intel(R) OneAPI Toolkit:
6482
> `$ dpcpp vadd_usm.cpp`
6583
6684
To run under emulation through ESIMD_EMULATOR backend:
67-
> `$ SYCL_DEVICE_FILTER=ext_intel_esimd_emulator:gpu ./a.out`
85+
> `$ ONEAPI_DEVICE_SELECTOR=ext_intel_esimd_emulator:gpu ./a.out`
6886
6987
Please note that ESIMD_EMULATOR backend cannot be picked up as default
7088
device automatically. To enable it, `ext_intel_esimd_emulator:gpu` device must
71-
be specified among other devices explicitly in `SYCL_DEVICE_FILTER` environment
89+
be specified among other devices explicitly in `ONEAPI_DEVICE_SELECTOR` environment
7290
variable. The emulator device effectively replaces any Intel GPU device for SYCL runtime,
7391
so they can't be used simultaneously by a SYCL offload application process. On the other
7492
hand, it is OK to mix the emulator with non-Intel GPU devices or CPU device in
75-
`SYCL_DEVICE_FILTER`.
93+
`ONEAPI_DEVICE_SELECTOR`.
7694

7795
## Running ESIMD examples from [ESIMD test suite](https://github.com/intel/llvm-test-suite/tree/intel/SYCL/ESIMD) on github with ESIMD_EMULATOR backend
7896

@@ -108,7 +126,7 @@ ninja check
108126

109127
Note that only [ESIMD Kernels](https://github.com/intel/llvm-test-suite/tree/intel/SYCL/ESIMD) are
110128
tested with above command examples due to ESIMD_EMULATOR's limitations
111-
below.
129+
below. And, if 'CM_RT_PLATFORM' is not set, 'skl' is set by default.
112130

113131
## Limitation
114132
- The emulator is available only on Linux for now. Windows support is WIP.

0 commit comments

Comments
 (0)