Optimize: Share set of \SEEN flag across items.
Review Request #119933 - Created Aug. 25, 2014 and submitted
Most items just have a single \SEEN flag in their list of flags.
Currently, we share the \SEEN flag, but not the list itself. By
special-casing this extremely often occurring case, we can decrease
the memory consumption easily. In my case it's a difference of ca.
7MB (171MB before vs. 164MB after).
ran it before and after this patch and compared the memory consumption. That went down noticeably. Also added a static counter to compare cache hits/misses temporarily, which showed this cache is easily hit ca. 40k times and only missed 4k times (so a 10:1 ratio, not bad at all :))
This should now work on GCC/Clang and potentially on Windows in the future, once they properly support C++11 and set
Is it OK to push this into KDE/4.14?
Revision 2 (+24 -9)