• kiffmet@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    11 months ago

    It’s kinda weird, but actually GCN up to and including RDNA2 did work scheduling in hardware, including automatic context switches in case of a bubble, hazard or stall.

    With RDNA3, this was changed to a compiler/driver based approach in favor of a simpler and smaller CU design. The tradeoff is increased driver complexity and higher CPU overhead - this is also how Nvidia has been handling things for ages now.

    HAGS seems to mitigate the overhead to some extent, this probably works through the HW providing hints to the OS about when there’s a good moment to switch tasks, such that the latter can set up memory transfers and other things needed slightly ahead of time and also doesn’t need to mindlessly wait for the GPU to finish whatever it’s doing, since in-flight Wavefronts aren’t preemptible.

    Anyhow, last time I looked at tests, the performance benefits were quite minimal (around 5% on a 2080ti in CPU limit)

    • Vizra@alien.topB
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      Gonna be honest… I didn’t understand a single word I just ready but word man that’s sick lol