Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

Bug AsyncGPUReadback Hitching on Gfx.UpdateAsyncReadbackData

Discussion in 'General Graphics' started by BoltScripts, Jan 11, 2023.

  1. BoltScripts

    BoltScripts

    Joined:
    Feb 12, 2015
    Posts:
    20
    Was trying to optimize getting data off the gpu just in case but while using ComputeBuffer.GetData completes without really hitching anything, for some reason using AsyncGPUReadback does the opposite of what it's supposed to and freezes the game entirely.
    Here's the profiler on one of the hitches.

    upload_2023-1-10_18-6-57.png

    And here's the code I'm using
    upload_2023-1-10_18-24-18.png


    Not sure what to make of this.
    I'm running the latest 2019LTS version, not sure if this is something that'd be fixed in later versions but don't really have that option anyway.
    At this point I'd just want someone to sanity check me and tell me if it's just broken or what.
     
  2. Goldaur

    Goldaur

    Joined:
    Jul 4, 2020
    Posts:
    1
    I have the same problem, I tried to optimize some work by putting it async but getting data back with readbacks ends up being very slow with this problem
     
  3. bobozee

    bobozee

    Joined:
    Jul 17, 2017
    Posts:
    2
    Same issue. Very frustrating.
     
  4. Unifikation

    Unifikation

    Joined:
    Jan 4, 2023
    Posts:
    1,045
    This is, in my experience, most often caused by particle systems. Had MANY of these in 2019, in various versions of it.
     
  5. Unifikation

    Unifikation

    Joined:
    Jan 4, 2023
    Posts:
    1,045
  6. richardkettlewell

    richardkettlewell

    Unity Technologies

    Joined:
    Sep 9, 2015
    Posts:
    2,240
    I've no idea, other than yeah it looks like a bug. It doesn't look very async :)

    If you're able to submit a bug report, the team that owns this can take a look.