Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

D3D11 profiling problems in 0.10 #670

Open
niello opened this issue Nov 23, 2023 · 12 comments
Open

D3D11 profiling problems in 0.10 #670

niello opened this issue Nov 23, 2023 · 12 comments

Comments

@niello
Copy link

niello commented Nov 23, 2023

  1. is_active var is referenced but there is only active. Compilation error.
    : m_active( is_active && GetProfiler().IsConnected() )
  2. In a regular run an application never reaches here, tcpu and tgpu remain 0 and GPU track is not drawn. But manually walking this part under debugger seems to give GPU enough time to finish the query and then data appear.
    tcpu = tcpu0 + (tcpu1 - tcpu0) * 1 / 2;
    tgpu = timestamp * (1000000000 / disjoint.Frequency);
  3. Pressing "Auto" button in this situation crashes the client
    image
  4. On init D3D11 spawns a warning: D3D11 WARNING: ID3D11DeviceContext::End: End is being invoked on a Query, where the previous results have not been obtained with GetData. This is valid; but unusual. The previous results are being abandoned, and new Query results will be generated. [ EXECUTION WARNING 410: QUERY_END_ABANDONING_PREVIOUS_RESULTS]

Release 0.10
Windows, D3D11
On-demand connection mode

@wolfpld
Copy link
Owner

wolfpld commented Nov 23, 2023

@slomp Can you take a look?

@slomp
Copy link
Contributor

slomp commented Nov 27, 2023

Sure, I'll try to investigate it this week!

@simonvanbernem
Copy link
Contributor

simonvanbernem commented Mar 17, 2024

I also ran into some of these issues, with 0.10.0. Is there an update to this? is_active was already fixed in #753, but I'm also seeing the d3d11 warnings being generated. I can't repro crashing the client by clicking "Auto" though, this works for me. And the GPU track is also visible. So I guess there have been a bunch of fixes already?

@slomp
Copy link
Contributor

slomp commented Mar 17, 2024

but I'm also seeing the d3d11 warnings being generated.

Which warnings? Only this one?

warning: D3D11 WARNING: ID3D11DeviceContext::End: End is being invoked on a Query, where the previous results have not been obtained with GetData. This is valid; but unusual. The previous results are being abandoned, and new Query results will be generated. [ EXECUTION WARNING 410: QUERY_END_ABANDONING_PREVIOUS_RESULTS]

@simonvanbernem
Copy link
Contributor

but I'm also seeing the d3d11 warnings being generated.

Which warnings? Only this one?

warning: D3D11 WARNING: ID3D11DeviceContext::End: End is being invoked on a Query, where the previous results have not been obtained with GetData. This is valid; but unusual. The previous results are being abandoned, and new Query results will be generated. [ EXECUTION WARNING 410: QUERY_END_ABANDONING_PREVIOUS_RESULTS]

yes

@simonvanbernem
Copy link
Contributor

Although I also get a crash in TracyD3D11.hpp when connected to the server and vsync turned off in a scene where my game runs at >1000fps:

Assertion failed: false && "TracyD3D11: " "timestamp expected to be ready, but it was not!", file C:\Workspaces\spaced\source\tracy\public/tracy/TracyD3D11.hpp, line 224

Should I open a new issue for that, or is there some information I could give that would be helpful?

@slomp
Copy link
Contributor

slomp commented Mar 18, 2024

when connected to the server and vsync turned off in a scene where my game runs at >1000fps:

Are you calling TracyD3D11Collect periodically when vsync off?

@simonvanbernem
Copy link
Contributor

when connected to the server and vsync turned off in a scene where my game runs at >1000fps:

Are you calling TracyD3D11Collect periodically when vsync off?

Yes, immediatedly after IDXGISwapChain_Present. I have three calls to ID3D11DeviceContext_End in my own code that I use(d) to measure the GPU frame times before I used tracy. Might that interfere?

@slomp
Copy link
Contributor

slomp commented Mar 22, 2024

Would you by any chance have a small, dependency-free minimal reproducible code that you could share?
(I dug some old D3D11 code I had and tried to reproduce the issue, but was unsuccessful).

@simonvanbernem
Copy link
Contributor

Would you by any chance have a small, dependency-free minimal reproducible code that you could share?
(I dug some old D3D11 code I had and tried to reproduce the issue, but was unsuccessful).

No, sorry. Only a big application that doesn't even repro it 100% of the time.

@slomp
Copy link
Contributor

slomp commented May 31, 2024

PR open to address the is_active compilation error with TRACY_ON_DEMAND:
#806

@simonvanbernem
Copy link
Contributor

Hey @slomp, I managed to make a self contained repro for the warning. Please take a look at #947

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants