cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

optimiz3
Adept II

CodeXL: Static analysis of compiled HLSL (DirectX Byte-Code/DXBC)

Right now CodeXL 1.9 offers static analysis of HLSL shaders through a build pipeline that looks like this:

1. Input HLSL

2. DirectX compiles HLSL to DXBC

3. DXBC is fed into analysis tool

However, our shaders are massive and the HLSL takes between 15-30 minutes to compile.  The generated DXBC output is anywhere form 256KB to 1MB depending on the shader.

It would save a TON of time if CodeXL could load the DXBC file directly rather than forcing a 15-30 minute compile every time, and would also let us verify production binaries as we only ship compiled DXBC with our software as is mandated by Microsoft (for Windows Store apps).

Is there a way to skip the HLSL compilation step and have CodeXL direcly load the DXBC for analyses?  Seeing as the AMD driver only cares about the compiled DXBC this an extremely critical feature for reproducability and verifiability.

Our shaders are scientific and cryptographic compute functions that run on top of DirectX - it would be great if we could improve our AMD support.

0 Likes
1 Solution
optimiz3
Adept II

If anyone is curious, we found a workaround.  While the CodeXL GUI doesn't appear to be able to process DXBC (DXAsm binary) files, the command line tool CodeXLAnalyzer.exe does support DirectX byte code via the -s DXAsm command line parameter.

View solution in original post

0 Likes
2 Replies

Hi optimiz3​ - I have added you to the developer whitelist and moved your question to the CodeXL forum. You can now post in any of the developer forums.

optimiz3
Adept II

If anyone is curious, we found a workaround.  While the CodeXL GUI doesn't appear to be able to process DXBC (DXAsm binary) files, the command line tool CodeXLAnalyzer.exe does support DirectX byte code via the -s DXAsm command line parameter.

0 Likes