To comment on the following update, log in, then open the issue: http://www.openoffice.org/issues/show_bug.cgi?id=115684 Issue #|115684 Summary|svl: performance regression in SfxItemPool Component|framework Version|DEV300m92 Platform|All URL| OS/Version|All Status|NEW Status whiteboard| Keywords| Resolution| Issue type|DEFECT Priority|P3 Subcomponent|code Assigned to|mst Reported by|mst
------- Additional comments from m...@openoffice.org Fri Nov 19 16:39:42 +0000 2010 ------- lla alerted me to a regression in performance that was introduced in m92 and is apparently caused by the svarray CWS: storing the performance test document in writer is 9% slower on linux, 20% slower on windows. fortunately the documents written by m90 and by svarray are not different, so it is not caused by writing wrong stuff. so i investigated with callgrind: storing the document takes #cycles (or whatever callgrind counts): m90: 5,335,595,338 svarray: 6,336,979,732 looking at the profile with kcachegrind i found something very surprising. the SfxItemPool::Remove() and SfxItemPool::Put() methods are much slower. numbers for SfxItemPool::Remove(): m90: 167 million svarray: 643 million (Put() is similar) the difference is almost entirely due to the operator++ of the iterator of the deque that holds the items. this takes 408 million cycles in svarray. then i replaced the deque with a vector, and the number for SfxItemPool::Remove() was: 188 million so it's almost as fast as before. it's very surprising that the deque iterator is so slow; in further changes we should check if vector is sufficient and only use deque if both ends of the container are manipulated. --------------------------------------------------------------------- Please do not reply to this automatically generated notification from Issue Tracker. Please log onto the website and enter your comments. http://qa.openoffice.org/issue_handling/project_issues.html#notification --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@framework.openoffice.org For additional commands, e-mail: issues-h...@framework.openoffice.org --------------------------------------------------------------------- To unsubscribe, e-mail: allbugs-unsubscr...@openoffice.org For additional commands, e-mail: allbugs-h...@openoffice.org