~/talk

Fast C++ to QML properties

Talkat Qt World Summit 2019 · 2019-11-04..11-06· [frontend-architecture]
links:none on file
slides:none on file

QQmlPropertyMap hits a performance wall because every insert rebuilds the QMetaObject leading to an n^2 rebuild of QMetaObject and poor update throughput; tests show scenes with around 6000 properties and dozens (≈50) simultaneous changes. FastProperyMap implements a builder API, index-based inserts and name caching to avoid repeated metaobject rebuilds, yielding multi× speedups (claim: order-of-magnitude better on insert/updates, measured ~3× faster than static QQml-backed maps in parts) and a usable GitHub implementation.

AI-written summary · about

  1. 0:00Introduction to talk
  2. 2:19Controlling pixels with QML
  3. 5:34Demo of property maps
  4. 7:20Static vs dynamic property maps
  5. 9:58Performance issues with static maps
  6. 13:01Understanding QMetaObject
  7. 16:58Fixing slow insertion in QML
  8. 20:36Optimizing property name checks
  9. 21:00Introducing QML property map
  10. 24:03Tricking QML into faster lookups
  11. 26:26Final performance results
  12. 27:07Q&A and conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.