llvm icon indicating copy to clipboard operation
llvm copied to clipboard

[SYCL][DeviceSanitizer] Support GPU DG2 Device

Open AllanZyne opened this issue 10 months ago • 7 comments

UR: https://github.com/oneapi-src/unified-runtime/pull/1521

  • Add MemToShadow_DG2
  • Enable lit tests for GPU, decrease the global workgoup size in some tests due to the limit of GPU memory

AllanZyne avatar Apr 17 '24 06:04 AllanZyne

Why did my e2e tests not run on "SYCL Pre Commit on Linux / test (E2E tests on Intel Arc A-Series Graphics" this machine? Should I configure something? Thanks!

AllanZyne avatar Apr 23 '24 12:04 AllanZyne

Why did my e2e tests not run on "SYCL Pre Commit on Linux / test (E2E tests on Intel Arc A-Series Graphics" this machine? Should I configure something? Thanks!

Ok, I guess I've figured out some parts of the reason. But I still don't know why my tests are not list in this pre ci.

AllanZyne avatar Apr 23 '24 12:04 AllanZyne

Why did my e2e tests not run on "SYCL Pre Commit on Linux / test (E2E tests on Intel Arc A-Series Graphics" this machine? Should I configure something? Thanks!

@AllanZyne the tests in this check run on L0 GPU + OCL GPU (logs), while E2E tests modified in this PR require CPU device (see // REQUIRES: comment at the beginning of each test). If you need to run these tests on GPU as well, you need to modify the // REQUIRES: comment.

dm-vodopyanov avatar Apr 23 '24 12:04 dm-vodopyanov

Why did my e2e tests not run on "SYCL Pre Commit on Linux / test (E2E tests on Intel Arc A-Series Graphics" this machine? Should I configure something? Thanks!

@AllanZyne the tests in this check run on L0 GPU + OCL GPU (logs), while E2E tests modified in this PR require CPU device (see // REQUIRES: comment at the beginning of each test). If you need to run these tests on GPU, you need to modify the // REQUIRES: comment.

Thanks! I also found this reason. I'll remove them later!

AllanZyne avatar Apr 23 '24 12:04 AllanZyne

Hi @intel/llvm-reviewers-runtime @intel/unified-runtime-reviewers @intel/dpcpp-tools-reviewers , pre CI tests were passed, please review this PR. Thanks very much!

AllanZyne avatar Apr 30 '24 04:04 AllanZyne

The Jenkins/Precommit checks have failed. Please make sure that the changes in https://github.com/oneapi-src/unified-runtime/pull/1521 are based on top of current main branch and point the UR tag to that new commit. Also pull in the latest sycl branch changes into this PR to make sure we're testing current code. Hopefully that resolves the issue.

kbenzie avatar May 06 '24 10:05 kbenzie

Hi, how to force all pre ci tests to rerun? Thanks!

AllanZyne avatar May 13 '24 11:05 AllanZyne

Hi @aelovikov-intel, did your comments have been addressed?

AllanZyne avatar May 28 '24 07:05 AllanZyne

There's one issue need to fix in IGC (introduced by https://github.com/intel/llvm/pull/13503), therefore this PR has to be pending here

AllanZyne avatar Jun 05 '24 02:06 AllanZyne

For GEN12 device, I tested this PR with latest igc driver and it passed. Maybe we need to wait igc driver upgrade here.

AllanZyne avatar Jul 09 '24 06:07 AllanZyne

For GEN12 device, I tested this PR with latest igc driver and it passed. Maybe we need to wait igc driver upgrade here.

I skip checking GEN devices now, to prevent from blocking next release.

AllanZyne avatar Jul 12 '24 09:07 AllanZyne

@intel/unified-runtime-reviewers, please review. Thanks!

AllanZyne avatar Jul 16 '24 02:07 AllanZyne

@intel/llvm-gatekeepers could this merge? The failures are the same as reported in https://github.com/intel/llvm/issues/14715.

kbenzie avatar Jul 24 '24 15:07 kbenzie

@AllanZyne - Following this PR a lot of address sanitizer tests started failing in post-commit on DG2:

  SYCL :: AddressSanitizer/common/demangle-kernel-name.cpp
  SYCL :: AddressSanitizer/common/kernel-debug.cpp
  SYCL :: AddressSanitizer/misaligned/misalign-int.cpp
  SYCL :: AddressSanitizer/misaligned/misalign-long.cpp
  SYCL :: AddressSanitizer/misaligned/misalign-short.cpp
  SYCL :: AddressSanitizer/multiple-reports/multiple_kernels.cpp
  SYCL :: AddressSanitizer/multiple-reports/one_kernel.cpp
  SYCL :: AddressSanitizer/out-of-bounds/DeviceGlobal/device_global.cpp
  SYCL :: AddressSanitizer/out-of-bounds/DeviceGlobal/device_global_image_scope.cpp
  SYCL :: AddressSanitizer/out-of-bounds/DeviceGlobal/device_global_image_scope_unaligned.cpp
  SYCL :: AddressSanitizer/out-of-bounds/DeviceGlobal/multi_device_images.cpp
  SYCL :: AddressSanitizer/out-of-bounds/USM/parallel_for_char.cpp
  SYCL :: AddressSanitizer/out-of-bounds/USM/parallel_for_func.cpp
  SYCL :: AddressSanitizer/out-of-bounds/USM/parallel_for_int.cpp
  SYCL :: AddressSanitizer/out-of-bounds/USM/parallel_for_short.cpp
  SYCL :: AddressSanitizer/out-of-bounds/USM/parallel_no_local_size.cpp
  SYCL :: AddressSanitizer/out-of-bounds/USM/unaligned_shadow_memory.cpp
  SYCL :: AddressSanitizer/out-of-bounds/buffer/buffer.cpp
  SYCL :: AddressSanitizer/out-of-bounds/buffer/buffer_2d.cpp
  SYCL :: AddressSanitizer/out-of-bounds/buffer/buffer_3d.cpp
  SYCL :: AddressSanitizer/out-of-bounds/buffer/buffer_copy_fill.cpp
  SYCL :: AddressSanitizer/out-of-bounds/buffer/subbuffer.cpp
  SYCL :: AddressSanitizer/out-of-bounds/local/group_local_memory.cpp
  SYCL :: AddressSanitizer/out-of-bounds/local/local_accessor_basic.cpp
  SYCL :: AddressSanitizer/out-of-bounds/local/local_accessor_function.cpp
  SYCL :: AddressSanitizer/out-of-bounds/local/local_accessor_multiargs.cpp
  SYCL :: AddressSanitizer/out-of-bounds/local/multiple_source.cpp
  SYCL :: AddressSanitizer/out-of-bounds/private/multiple_private.cpp
  SYCL :: AddressSanitizer/out-of-bounds/private/single_private.cpp

Can you please let us know if it is a simple fix or whether we'll have to revert this patch?

steffenlarsen avatar Jul 25 '24 08:07 steffenlarsen

Can you please let us know if it is a simple fix or whether we'll have to revert this patch?

https://github.com/intel/llvm/pull/14720#issuecomment-2249798071 is suggesting to add gpu-intel-pvc to the list of unsupported for the asan lit config.

kbenzie avatar Jul 25 '24 09:07 kbenzie

@AllanZyne which part of this PR requires gpu driver uplift as mentioned in https://github.com/intel/llvm/pull/14720#issuecomment-2249798071?

wenju-he avatar Jul 25 '24 09:07 wenju-he