Changes between Initial Version and Version 4 of Ticket #24637


Ignore:
Timestamp:
2026-02-13T19:01:53+01:00 (5 days ago)
Author:
zkir
Comment:

Memory consumption measurements added to issue description.

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #24637

    • Property Milestone26.03
  • Ticket #24637 – Description

    initial v4  
    1515* Parameters of methods of Stylable interface are adjusted accordingly.  `Stylable.getCachedStyle()` becomes `Stylable.getCachedStyle(ElemStyles styles)`, e.t.c.
    1616
     17== Performance and memory impact
     18
     19**Performance impact:** Performance tests via CLI **DO NOT** reveal any performance degradation (See detailed tests result in the comments below)
     20
     21**Memory impact:** Additional **48 bytes** are consumed by the newly added HashMap per OsmPrimitive. In comparison,  existing StyleCache field consumes 24 bytes.
     22
     23    size of HashMap: java.util.HashMap object internals:
     24    OFF  SZ                       TYPE DESCRIPTION               VALUE
     25      0   8                            (object header: mark)     0x0000000000000009 (non-biasable; age: 1)
     26      8   4                            (object header: class)    0x002013d8
     27     12   4              java.util.Set AbstractMap.keySet        null
     28     16   4       java.util.Collection AbstractMap.values        null
     29     20   4   java.util.HashMap.Node[] HashMap.table             [(object), null, null, null, null, null, null, null, null, null, null, null, null, null, null, null]
     30     24   4              java.util.Set HashMap.entrySet          null
     31     28   4                        int HashMap.size              1
     32     32   4                        int HashMap.modCount          7
     33     36   4                        int HashMap.threshold         12
     34     40   4                      float HashMap.loadFactor        0.75
     35     44   4                            (object alignment gap)
     36    Instance size: 48 bytes
     37
    1738== References
    1839* UrbanEye3D branch with the feature in question can be found here:  https://github.com/Zkir/UrbanEye3D/tree/mapcss-layer