Skip to content

core: Disable Qt RHI pipeline cache

David Edmundson requested to merge work/d_ed/rhi_pipeline_cache into master

The Qt pipeline cache causes a disk sync on every load and save of a QQuickWindow. This causes a stutter under high disk usage.

The gains from this cache are minimal on our simple scenes on PC hardware. Especially given mesa has it's own cache, profiling on my personal laptop showed the pipeline as being 0ms.

There is an upstream patch at https://codereview.qt-project.org/c/qt/qtdeclarative/+/564411 . QSaveFile still has a sync, but that should only be hit for the first non-cached run. I'm also adding a flag to QSaveFile to fix the QML cache and first run case.

Tested via running kwin with strace -e inject=fdatasync:delay_enter=10000000 to simulate a slow flush.

BUG: 487043

Merge request reports