|
Heap dump analysis of an OFP-related use case is showing that even though we are using ImmutableOffsetMaps to hold children, those maps still account for 2.4M (10%) objects holding 55MiB (9%) shallow memory. We also see SharedSingletonMap accounting for 3.4M (15%) objects holding 79MiB (12%) memory.
Once we have YANGTOOLS-1020, we should be able to generalize that solution to generate NormalizedNode implementations, which do not reference, but rather embed the child map.
That would lead to elimination of {SharedSingleton,ImmutableOffset}Maps, or really any internal data structure, shifting those overheads to the generated class, where they are amortized among all instances without additional cost.
|