Hello @lamashnikov, this question is better directed to the mesa/RADV devs or maybe the DXVK/VKD3D-Proton devs than the Proton project.
Closing as out of scope for this project.
Thanks, i'll ask that question there then
Regards
Nothing extracted yet.
I confirm:
contain this feature already.
Description
As steam deck use an APU, it seam that the graphic pipeline should be different that the one used on configuration with discrete GPUs.
Justification
In an APU, the RAM and VRAM are the same, thus it is possible to transfer data from RAM to VRAM without actually copying it, leading to less stress on the northbridge and memory (RAM and VRAM). As the zero copy way of programming is performed when vulkan/openGL is used and not inside the driver itself, it seems that it's the job of the proton layer to do so when re-interpreting graphics library calls (by creating buffer with MEM_ALLOC_HOST_PTR for example). I wonder if this feature is taken in account in proton (and if proton does a specific graphic pipeline for APUs) or if everything is set as if it where an discrete GPU no matter the hardware it's running on? (Because using zero copy with a discrete GPU architecture is not an good option, it is only efficient with APU)
References
Different sources i could gather on the subject (mostly about openCL, but still):
https://stackoverflow.com/questions/12766578/access-path-in-zero-copy-in-opencl
http://meseec.ce.rit.edu/551-projects/spring2017/2-2.pdf
https://community.amd.com/t5/opencl/optimizing-data-transfer-with-apu-best-way-to-test-zero-copy/m-p/152658/highlight/true
https://free.eol.cn/edu_net/edudown/AMDppt/OpenCL Programming and Optimization - Part II.pdf (from page 36)
Regards