Announcement

Collapse
No announcement yet.

RADV Sees Experimental Fragment Shader Interlock - Important For Emulators, D3D12

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #21
    Originally posted by Quackdoc View Post

    mind you with context, this is specifically talking about polaris. off the top of my head VK_EXT_image_drm_format_modifier. this is needed for wlroots vulkan renderers as well as MPV's libplacebo zerocopy rendering. I realize that newer cards have much better current vulkan support. however this makes me particularly worried about longevity of the cards.
    That is a purely software extension. It exposes the chips internal tiling modes via a generic interface. The tricky part is that the hardware's internal tiling formats are completely different and really complex to expose via that interface on pre-gfx9 chips. That's why it's not supported so far. If that extension is not supported, then linear formats are used which are (generally), compatible with all drivers. In practice you'll end up with linear anyway if you are sharing buffers between GPUs of different vendors anyway since most tiling formats are vendor specific.

    Comment


    • #22
      Originally posted by agd5f View Post

      That is a purely software extension. It exposes the chips internal tiling modes via a generic interface. The tricky part is that the hardware's internal tiling formats are completely different and really complex to expose via that interface on pre-gfx9 chips. That's why it's not supported so far. If that extension is not supported, then linear formats are used which are (generally), compatible with all drivers. In practice you'll end up with linear anyway if you are sharing buffers between GPUs of different vendors anyway since most tiling formats are vendor specific.
      I understand that it maybe complicated to do and that the gpu's can technically support it, but if drivers don't expose it, it doesn't really help the user. currently wlroots based compositors are using it for vulkan support. and mpv uses it with their high quality GPU renderer for a feature which enable's mpv to work quite a bit more efficiently. both of these are highly desirable features.

      Comment


      • #23
        Originally posted by Quackdoc View Post

        I understand that it maybe complicated to do and that the gpu's can technically support it, but if drivers don't expose it, it doesn't really help the user. currently wlroots based compositors are using it for vulkan support. and mpv uses it with their high quality GPU renderer for a feature which enable's mpv to work quite a bit more efficiently. both of these are highly desirable features.
        What makes it tricky is that the underlying kernel interface that is used to support the VK extension was designed with GPUs with much less complex tiling configurations in mind. The intel and ARM GPUs at that time had maybe 2-3 tiling modes with fixed layouts. AMD GPUs of that time period had about 15 tiling modes along with a bunch of board specific parameters that depended on the size and number of memory channels among other things. The challenge has been whether there are enough bits in the interface to encode all of this information effectively. It would be a shame to support the extension only to see performance drop or other problems to arise because we can no longer support the optimal tiling modes for each use case.

        Comment

        Working...
        X