perf: save memory by sharing selector objects in filesystemstylecache
---------------------------------------------------------------------

                 Key: TRINIDAD-2032
                 URL: https://issues.apache.org/jira/browse/TRINIDAD-2032
             Project: MyFaces Trinidad
          Issue Type: Improvement
          Components: Skinning
            Reporter: Jeanne Waldman
            Assignee: Jeanne Waldman


We can save memory if we store Selectors in a <Selector, Selector> map at the
FileSystemStyleCache level, and reuse where we can.

The implementation will be  similar to what we did in TRINIDAD-2025 where we 
reused
Style objects. Selector objects are only 16 bytes each, but each
FileSystemStyleCache$StylesImpl instance creates about 4500 of them for our 
complicated skin.

Before Selector sharing:
FSSC$Entry about 335K each of retained size.
FSSC$StylesImpl about 214K each of retained size

run a page in 3 diff browsers, and we have 13402 Selector objects, total 214K
retained size

After Selector sharing:
FSSC$Entry about 263K each of retained size.
FSSC$StylesImpl about 142K each of retained size
run a page in 3 diff browsers, and we have 4533 Selector objects using 72.5K
Retained Size

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to