llvm / llvm/offload-test-suite
[Intel][DirectX] All Matrix tests are crashing on intel Xe GPUs
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 18
- Forks
- 39
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 40
Description
There isn't much to go on. I'm also having a hard time creating a pix capture because of how quickly this is crashing.
Another interesting tidbit. The Gen11 and older Intel GPUs appear to be working fine on the matrix tests. I think it is very likely we will need to file a vendor bug, but would be good to get a pix capture first
## Repro steps
```
offloader.exe -debug-layer -adapter-regex=Intel matrix_const_single_subscript.i2x3.test.tmp/pipeline.yaml matrix_const_single_subscript.i2x3.test.tmp.o
```
## Devices Crash was Observed
> GPU 0
```
VendorId = Intel (0x8086)
deviceID = 0x4680
isUMAArchitecture = TRUE
videoMemory = 63.88 GiB (68594716672 B)
description = Intel(R) UHD Graphics 770
extensionVersion = 0x70000
intelExtensionAvailability = TRUE
dxDriverVersion = 32.0.101.7082
driverInfo.driverReleaseRevision = 101
driverInfo.driverBuildNumber = 7082
DefaultFidelityPreset = Low (0x1)
GPUArchitecture = Alderlake
GraphicsGeneration = Gen12 / Xe
euCount = 32
packageTDP = 125
maxFillRate = 8
maxFrequency = 1500
minFrequency = 300
```
> GPU 1
```
VendorId = Intel (0x8086)
deviceID = 0x56A0
isUMAArchitecture = FALSE
videoMemory = 15.88 GiB (17045651456 B)
description = Intel(R) Arc(TM) A770 Graphics
extensionVersion = 0x70000
intelExtensionAvailability = TRUE
DefaultFidelityPreset = Low (0x1)
GPUArchitecture = Alchemist
GraphicsGeneration = Xe High Performance Graphics
euCount = 512
packageTDP = 0
maxFillRate = 128
maxFrequency = 2400
minFrequency = 300
```
## Stack trace
```
# | 0. Program arguments: e:\\project\\llvm-build\\bin\\offloader.exe -debug-layer -adapter-regex=Intel E:\\project\\llvm-build\\tools\\OffloadTest\\test\\clang-d3d12\\Basic\\Matrix\\Output\\matrix_const_single_subscript.i2x3.test.tmp/pipeline.yaml E:\\project\\llvm-build\\tools\\OffloadTest\\test\\clang-d3d12\\Basic\\Matrix\\Output\\matrix_const_single_subscript.i2x3.test.tmp.o
# | D3D: ID3D12Device::RemoveDevice: Device removal has been triggered for the following reason (DXGI_ERROR_DRIVER_INTERNAL_ERROR: There is strong evidence that the driver has performed an undefined operation; but it may be because the application performed an illegal or undefined operation to begin with.).
# | Exception Code: 0x0000087A
# | #0 0x00007ffe32f9a80a (C:\WINDOWS\System32\KERNELBASE.dll+0xca80a)
# | #1 0x00007ffdf61f4f4f (C:\WINDOWS\SYSTEM32\DXGIDebug.dll+0x4f4f)
# | #2 0x00007ffd9a9352c8 (C:\WINDOWS\SYSTEM32\D3D12SDKLayers.dll+0xf52c8)
# | #3 0x00007ffd9a87da36 (C:\WINDOWS\SYSTEM32\D3D12SDKLayers.dll+0x3da36)
# | #4 0x00007ffd9a860787 (C:\WINDOWS\SYSTEM32\D3D12SDKLayers.dll+0x20787)
# | #5 0x00007ffd9a87c4f3 (C:\WINDOWS\SYSTEM32\D3D12SDKLayers.dll+0x3c4f3)
# | #6 0x00007ffd9ad79333 (C:\WINDOWS\SYSTEM32\D3D12Core.dll+0x99333)
# | #7 0x00007ffd9ad20ccb (C:\WINDOWS\SYSTEM32\D3D12Core.dll+0x40ccb)
# | #8 0x00007ffd9ad3d4ff (C:\WINDOWS\SYSTEM32\D3D12Core.dll+0x5d4ff)
# | #9 0x00007ffd9ad33141 (C:\WINDOWS\SYSTEM32\D3D12Core.dll+0x53141)
# | #10 0x00007ffd9ad32de8 (C:\WINDOWS\SYSTEM32\D3D12Core.dll+0x52de8)
# | #11 0x00007ffd9ad5c5f9 (C:\WINDOWS\SYSTEM32\D3D12Core.dll+0x7c5f9)
# | #12 0x00007ffd9ad30fdb (C:\WINDOWS\SYSTEM32\D3D12Core.dll+0x50fdb)
# | #13 0x00007ffd9a896b3e (C:\WINDOWS\SYSTEM32\D3D12SDKLayers.dll+0x56b3e)
# | #14 0x00007ffd9a8670aa (C:\WINDOWS\SYSTEM32\D3D12SDKLayers.dll+0x270aa)
# | #15 0x00007ffd9a868718 (C:\WINDOWS\SYSTEM32\D3D12SDKLayers.dll+0x28718)
# | #16 0x00007ffe02301707 (C:\WINDOWS\SYSTEM32\d3d12.dll+0x1707)
# | #17 0x00007ffd9acf7e06 (C:\WINDOWS\SYSTEM32\D3D12Core.dll+0x17e06)
# | #18 0x00007ffd9ad5b60c (C:\WINDOWS\SYSTEM32\D3D12Core.dll+0x7b60c)
# | #19 0x00007ffd9a864d8a (C:\WINDOWS\SYSTEM32\D3D12SDKLayers.dll+0x24d8a)
# | #20 0x00007ff7d262fb25 HR::toError E:\project\offload-test-suite\include\Support\WinError.h:20:0
# | #21 0x00007ff7d262fb25 `anonymous namespace'::DXDevice::createComputePSO E:\project\offload-test-suite\lib\API\DX\Device.cpp:505:0
# | #22 0x00007ff7d262cd75 llvm::Error::getPtr E:\project\llvm-project\llvm\include\llvm\Support\Error.h:277:0
# | #23 0x00007ff7d262cd75 llvm::Error::operator bool E:\project\llvm-project\llvm\include\llvm\Support\Error.h:241:0
# | #24 0x00007ff7d262cd75 `anonymous namespace'::DXDevice::executeProgram E:\project\offload-test-suite\lib\API\DX\Device.cpp:1569:0
# | #25 0x00007ff7d2542e75 run E:\project\offload-test-suite\tools\offloader\offloader.cpp:159:0
# | #26 0x00007ff7d25425f7 main E:\project\offload-test-suite\tools\offloader\offloader.cpp:87:0
# | #27 0x00007ff7d2df1420 invoke_main D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78:0
# | #28 0x00007ff7d2df1420 __scrt_common_main_seh D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288:0
# | #29 0x00007ffe3446e8d7 (C:\WINDOWS\System32\KERNEL32.DLL+0x2e8d7)
# | #30 0x00007ffe359cc53c (C:\WINDOWS\SYSTEM32\ntdll.dll+0x8c53c)
# `-----------------------------
```
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with lib/API/DX/Device.cpp at createComputePSO (line 505) and executeProgram (line 1569), then run the provided offloader.exe command against the listed Intel Xe devices. Compare the matrix-test crash with the working Gen11 and older GPUs and capture the relevant DirectX behavior. Done means identifying whether the failure is in the application or Intel's driver, with evidence for a vendor bug if applicable.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- computer-graphics, testing-qa
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100