Skip to content

DX12 inline ray tracing supported? #118

@pzompolas

Description

@pzompolas

Hello,

I've been doing some inline ray tracing tests via a compute shader - both on DX12 and Vulkan. The shader for both APIs is compiled via DXC, the latter using the SPIR-V emitting functionality of DXC.

I was getting considerably higher VGPR usage on the DX12 end (Vulkan is fine) and also lower performance, too. So I thought "let's try RGA to see where the discrepancy is".

Unfortunately, it seems I'm getting issues when analyzing a DX12 compute shader that does inline ray tracing. As soon as I comment out the code that does the ray tracing, RGA generates the ISA without issues. But putting it back on, produces the following:

Error: compute pipeline state creation failed.
To facilitate troubleshooting, we recommend enabling the --debug-layer option when running RGA.
Hint: this failure could be due to a missing or incompatible root signature.
1. If your root signature is defined in the HLSL code, make sure that the [RootSignature()] attribute is used for one of the pipeline shaders with the macro name, or use the --rs-macro option.
2. If your root signature is precompiled into a binary, please use the --rs-bin option with the full path to the binary file as an argument.

I have the debug layer enabled, using offline mode and passing my compute shader's blob and root signature bin as follows:

rga.exe -s dx12 -c gfx1103 --cs-blob "C:\tmp\CSMain.bin" --rs-bin "c:\tmp\rs0.bin" --isa "C:\tmp\Isa\Out.isa" --debug-layer --offline

Any ideas? Is it just a matter of "inline ray tracing is not working yet with RGA"?

Thanks

-Panos

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions