Skip to content

[CI][E2E] syclcompat/kernel/kernel_win.cpp fails to load kernel library when running with prebuilt binaries on CI #17561

@ayylol

Description

@ayylol

Describe the bug

This test fails when running with split build/run with the following message:

 FAIL: SYCL :: syclcompat/kernel/kernel_win.cpp (334 of 2308)
******************** TEST 'SYCL :: syclcompat/kernel/kernel_win.cpp' FAILED ********************
Exit Code: 3221226505

Command Output (stdout):
--
# RUN: at line 7
env ONEAPI_DEVICE_SELECTOR=level_zero:gpu  D:\github\_work\llvm\llvm\build-e2e\syclcompat\kernel\Output\kernel_win.cpp.tmp.out
# executed command: env ONEAPI_DEVICE_SELECTOR=level_zero:gpu 'D:\github\_work\llvm\llvm\build-e2e\syclcompat\kernel\Output\kernel_win.cpp.tmp.out'
# .---command stdout------------
# | void test_get_func_attrs()
# | void test_kernel_functor_ptr()
# | Could not load the library
# |   D:/github/actions-runner/_work/llvm/llvm/build-e2e/syclcompat/kernel/Output/kernel_win.cpp.tmp.dll
# `-----------------------------
# .---command stderr------------
# | [SYCLcompat] failed to load kernel library
# | Assertion failed: false, file D:\github\actions-runner\_work\llvm\llvm\llvm\sycl\test-e2e\syclcompat\kernel\Inputs\kernel_function.cpp, line 127
# `-----------------------------
# error: command failed with exit status: 0xc0000409

--

It failed in the following runs:
https://github.com/intel/llvm/actions/runs/13954386882/job/39064299562
https://github.com/intel/llvm/actions/runs/13970838218/job/39115784002
https://github.com/intel/llvm/actions/runs/13973444083/job/39128108563
https://github.com/intel/llvm/actions/runs/14045947370/job/39328372849

And passed in the following run:
https://github.com/intel/llvm/actions/runs/13950218284/job/39053292750
https://github.com/intel/llvm/actions/runs/14036965632/job/39300731764

I tried reproducing this locally by grabbing the binaries from the failing runs, and running them. They failed consistently with the same message. I also built this locally on a separate system and used that binary, and it passed normally.

sycl-ls output for the system I used to locally run:

[level_zero:gpu][level_zero:0] Intel(R) oneAPI Unified Runtime over Level-Zero, Intel(R) Iris(R) Xe Graphics 12.0.0 [1.6.31896]
[opencl:gpu][opencl:0] Intel(R) OpenCL Graphics, Intel(R) Iris(R) Xe Graphics OpenCL 3.0 NEO  [32.0.101.6559]
[opencl:cpu][opencl:1] Intel(R) OpenCL, 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz OpenCL 3.0 (Build 0) [2024.18.6.0.02_160000]

To reproduce

  1. Include a code snippet that is as short as possible
  2. Specify the command which should be used to compile the program
  3. Specify the command which should be used to launch the program
  4. Indicate what is wrong and what was expected

Environment

  • OS: [e.g Windows/Linux]
  • Target device and vendor: [e.g. Intel GPU]
  • DPC++ version: [e.g. commit hash or output of clang++ --version]
  • Dependencies version: [e.g. the output of sycl-ls --verbose]

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingsyclcompatIssues related to SYCLcompat

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions