Kodi Community Forum
[PATCH] increased guilib performance - performance patch for GUIInfoManager - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Development (https://forum.kodi.tv/forumdisplay.php?fid=32)
+--- Forum: Kodi Application (https://forum.kodi.tv/forumdisplay.php?fid=93)
+--- Thread: [PATCH] increased guilib performance - performance patch for GUIInfoManager (/showthread.php?tid=50098)



[PATCH] increased guilib performance - performance patch for GUIInfoManager - jkleemann - 2009-05-01

Can some experienced dev can check my patch:

http://trac.xbmc.org/ticket/6481

it seems nearly to good to be true!
Only checked on OS X - would be interested how this helps on linux/windows


[PATCH] increased guilib performance - performance patch for GUIInfoManager - jkleemann - 2009-05-01

see http://trac.xbmc.org/ticket/6481

Currently the Boolean Cache in GUIInfoManager creates/releases CSingleLocks too often. This is a major performance hog (at least on OS X). The new mechanism gets a lock in GUIWindow before rendering and releases the lock after rendering. While external threads are still forced to lock, rendering-thread accesses to the cache first compare if they own the lock (this is done by comparing the thread-id with the one holding the lock) and if so just do not lock anymore.

In debug builds performance improvements ranged between 45% Shocked (aeon main menu with scroller), 30% Nod (aeon movie views) and 5% (aeon weather) on OSX

would be nice if somebody could verify the effects on linux/windows XBMC and evtl. other skins.


- davilla - 2009-05-02

Thanks jkleemann, multiple posts are not required. The trac ticket is enough so attract the attention of team xbmc devs to this patch.


... seems to be macosx only - jkleemann - 2009-05-02

after discussing with the plex guys it seems it is a macosx only issue...

while it is always preferrable to keep locking code to the minimum the big gains come from (mac only) debugging code in XCrititcal section.