Skip to content

Commit ddbcbb1

Browse files
[SYCL][ESIMD][EMU] Disable esimd_emulator build by default (#5366)
- Enabled by '--enable-esimd-emulator'
1 parent 0280558 commit ddbcbb1

File tree

3 files changed

+19
-31
lines changed

3 files changed

+19
-31
lines changed

buildbot/configure.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ def do_configure(args):
3232
libclc_targets_to_build = ''
3333
libclc_gen_remangled_variants = 'OFF'
3434
sycl_build_pi_cuda = 'OFF'
35-
sycl_build_pi_esimd_emulator = 'ON'
35+
sycl_build_pi_esimd_emulator = 'OFF'
3636
sycl_build_pi_hip = 'OFF'
3737
sycl_build_pi_hip_platform = 'AMD'
3838
sycl_clang_extra_flags = ''
@@ -50,8 +50,8 @@ def do_configure(args):
5050
if args.arm:
5151
llvm_targets_to_build = 'ARM;AArch64'
5252

53-
if args.disable_esimd_emulator:
54-
sycl_build_pi_esimd_emulator = 'OFF'
53+
if args.enable_esimd_emulator:
54+
sycl_build_pi_esimd_emulator = 'ON'
5555

5656
if args.cuda or args.hip:
5757
llvm_enable_projects += ';libclc'
@@ -213,7 +213,7 @@ def main():
213213
parser.add_argument("--hip-platform", type=str, choices=['AMD', 'NVIDIA'], default='AMD', help="choose hardware platform for HIP backend")
214214
parser.add_argument("--hip-amd-arch", type=str, help="Sets AMD gpu architecture for llvm lit tests, this is only needed for the HIP backend and AMD platform")
215215
parser.add_argument("--arm", action='store_true', help="build ARM support rather than x86")
216-
parser.add_argument("--disable-esimd-emulator", action='store_true', help="exclude ESIMD_EMULATOR support")
216+
parser.add_argument("--enable-esimd-emulator", action='store_true', help="build with ESIMD emulation support")
217217
parser.add_argument("--no-assertions", action='store_true', help="build without assertions")
218218
parser.add_argument("--docs", action='store_true', help="build Doxygen documentation")
219219
parser.add_argument("--no-werror", action='store_true', help="Don't treat warnings as errors")

sycl/CMakeLists.txt

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -336,11 +336,13 @@ if(SYCL_BUILD_PI_HIP)
336336
list(APPEND SYCL_TOOLCHAIN_DEPLOY_COMPONENTS libspirv-builtins pi_hip)
337337
endif()
338338

339-
list(APPEND SYCL_TOOLCHAIN_DEPLOY_COMPONENTS pi_esimd_emulator libcmrt-headers)
340-
if (MSVC)
341-
list(APPEND SYCL_TOOLCHAIN_DEPLOY_COMPONENTS libcmrt-libs libcmrt-dlls)
342-
else()
343-
list(APPEND SYCL_TOOLCHAIN_DEPLOY_COMPONENTS libcmrt-sos)
339+
if(SYCL_BUILD_PI_ESIMD_EMULATOR)
340+
list(APPEND SYCL_TOOLCHAIN_DEPLOY_COMPONENTS pi_esimd_emulator libcmrt-headers)
341+
if (MSVC)
342+
list(APPEND SYCL_TOOLCHAIN_DEPLOY_COMPONENTS libcmrt-libs libcmrt-dlls)
343+
else()
344+
list(APPEND SYCL_TOOLCHAIN_DEPLOY_COMPONENTS libcmrt-sos)
345+
endif()
344346
endif()
345347

346348
# Use it as fake dependency in order to force another command(s) to execute.

sycl/doc/GetStartedGuide.md

Lines changed: 8 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ and a wide range of compute accelerators such as GPU and FPGA.
1111
- [Build DPC++ toolchain with support for NVIDIA CUDA](#build-dpc-toolchain-with-support-for-nvidia-cuda)
1212
- [Build DPC++ toolchain with support for HIP AMD](#build-dpc-toolchain-with-support-for-hip-amd)
1313
- [Build DPC++ toolchain with support for HIP NVIDIA](#build-dpc-toolchain-with-support-for-hip-nvidia)
14-
- [Build DPC++ toolchain with support for ESIMD CPU Emulation](#build-dpc-toolchain-with-support-for-esimd-cpu)
14+
- [Build DPC++ toolchain with support for ESIMD CPU Emulation](#build-dpc-toolchain-with-support-for-esimd-emulator)
1515
- [Build Doxygen documentation](#build-doxygen-documentation)
1616
- [Deployment](#deployment)
1717
- [Use DPC++ toolchain](#use-dpc-toolchain)
@@ -121,7 +121,7 @@ flags can be found by launching the script with `--help`):
121121
* `--cuda` -> use the cuda backend (see [Nvidia CUDA](#build-dpc-toolchain-with-support-for-nvidia-cuda))
122122
* `--hip` -> use the HIP backend (see [HIP](#build-dpc-toolchain-with-support-for-hip-amd))
123123
* `--hip-platform` -> select the platform used by the hip backend, `AMD` or `NVIDIA` (see [HIP AMD](#build-dpc-toolchain-with-support-for-hip-amd) or see [HIP NVIDIA](#build-dpc-toolchain-with-support-for-hip-nvidia))
124-
* '--enable-esimd-cpu-emulation' -> enable ESIMD CPU emulation (see [ESIMD CPU emulation](#build-dpc-toolchain-with-support-for-esimd-cpu))
124+
* '--enable-esimd-emulator' -> enable ESIMD CPU emulation (see [ESIMD CPU emulation](#build-dpc-toolchain-with-support-for-esimd-cpu))
125125
* `--shared-libs` -> Build shared libraries
126126
* `-t` -> Build type (debug or release)
127127
* `-o` -> Path to build directory
@@ -261,37 +261,23 @@ CUDA 11, and using a GeForce 1060 device.
261261
There is experimental support for DPC++ for using ESIMD CPU Emulation
262262

263263
This feature supports ESIMD CPU Emulation using CM_EMU library [CM
264-
Emulation
265-
project](https://github.com/intel/cm-cpu-emulation). Pre-built library
266-
package will be downloaded and installed in your deploy directory
267-
during toolchain build.
264+
Emulation project](https://github.com/intel/cm-cpu-emulation). The
265+
library package will be generated from source codes downloaded from
266+
its open source project and installed in your deploy directory during
267+
toolchain build.
268268

269269
To enable support for ESIMD CPU emulation, follow the instructions for
270-
the Linux DPC++ toolchain, but add the `--enable-esimd-cpu-emulation'.
270+
the Linux DPC++ toolchain, but add the `--enable-esimd-emulator'.
271271

272272
Enabling this flag requires following packages installed.
273273

274274
* Ubuntu 20.04
275275
* libva-dev / 2.7.0-2
276-
* libva-drm2 / 2.7.0-2
277-
* libva-glx2 / 2.7.0-2
278-
* libva-wayland2 / 2.7.0-2
279-
* libva-x11-2 / 2.7.0-2
280-
* libva2 / focal 2.7.0-2
281276
* libffi-dev / 3.3-4
282-
* libffi7 / 3.3-4
283-
* libdrm-amdgpu1
284-
* libdrm-common
285-
* libdrm-dev
286-
* libdrm-intel1
287-
* libdrm-nouveau2
288-
* libdrm-radeon1
289-
* libdrm2
277+
* libtool
290278
* RHEL 8.*
291279
* libffi
292280
* libffi-devel
293-
* libdrm
294-
* libdrm-devel
295281
* libva
296282
* libva-devel
297283

0 commit comments

Comments
 (0)