picom icon indicating copy to clipboard operation
picom copied to clipboard

Painting shadows (in resizing window process) performance issue

Open raven2cz opened this issue 3 years ago • 2 comments

I had possibility to compare picom performance in same PC between:

  • Mesa : Radeon 5700XT
  • Nvidia Proprietary drivers : GeForce RTX 3060 Ti Pro In xfce, awesomewm, i3.

It is almost same in both cases. Except one feature, resizing windows. Resizing windows is very slow with picom against without picom. This is known problem and I believe that there is not easy solution to solve it.

But there is significant performance issue, resizing windows with shadows for nvidia proprietary drivers against mesa. With shadows, the resizing is really terrible.

I haven't good knowledge about configuration picom.conf for nvidia yet. Is it known problem too? Is there some specific configuration for glx, shadows or some other internal parameter which can help with nvidia proprietary drivers? Can you post here some picom.conf optimized for nvidia? Thanks for help.

raven2cz avatar Feb 02 '22 14:02 raven2cz

I partially solved the nvidia shadows repainting in the resizing process by activating of ForceFullCompositionPipeline in nvidia settings.

raven2cz avatar Feb 02 '22 16:02 raven2cz

It is slow because as it is currently implemented shadow needs to be re-rendered in X pixmap and bound to OpenGL. The binding to OpenGL part is absurdly slow in NVIDIA driver.

It's possible to render the shadow in OpenGL directly, but I haven't got around to do it yet.

yshui avatar Feb 02 '22 17:02 yshui