[ https://issues.apache.org/jira/browse/IGNITE-11857?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16989854#comment-16989854 ]
Aleksey Plekhanov commented on IGNITE-11857: -------------------------------------------- [~ascherbakov] We can only change the type from {{long}} to {{int}} for delta values. There is no boxing for delta values in the code. Resident size for both structures is also relatively low. {code:java} System.out.println("Size: " + GraphLayout.parseInstance(benchmark.partCntr).totalSize()) {code} Old implementation: 1752 bytes TreeMap<Long, Item> (long delta): 2248 bytes TreeMap<Long, Item> (int delta): 2072 bytes TreeMap<Long, Integer>: 1816 bytes Even if we have 100 cache groups with 1000 partitions on each node it's about 30-50 extra megabytes of heap. This test is synthetic, in real production cases I think there will be much lower values. TreeMap with int delta has a little drop compared to long deltas and map of <Long, Integer> has a little drop compared to int deltas. Overall comparison table: ||Implementation||Throughput||GC pressure||Footprint|| |Old implementation|4,338 ± 0,208 ops/us|25 182 056|1752| |TreeMap<Long, Item> (long delta)|6,089 ± 0,459 ops/us|11 828 272|2248| |TreeMap<Long, Item> (long delta)|5,905 ± 0,338 ops/us|11 436 760|2072| |TreeMap<Long, Integer>|4,857 ± 0,318 ops/us|10 733 888|1816| I think we should get "TreeMap<Long, Item> (long delta)" version. What do you think? > Investigate performance drop after IGNITE-10078 > ----------------------------------------------- > > Key: IGNITE-11857 > URL: https://issues.apache.org/jira/browse/IGNITE-11857 > Project: Ignite > Issue Type: Improvement > Reporter: Alexei Scherbakov > Assignee: Aleksey Plekhanov > Priority: Major > Attachments: ignite-config.xml, > run.properties.tx-optimistic-put-b-backup > > Time Spent: 20m > Remaining Estimate: 0h > > After IGNITE-10078 yardstick tests show performance drop up to 8% in some > scenarios: > * tx-optim-repRead-put-get > * tx-optimistic-put > * tx-putAll > Partially this is due new update counter implementation, but not only. > Investigation is required. -- This message was sent by Atlassian Jira (v8.3.4#803005)