[ https://issues.apache.org/jira/browse/IGNITE-3018?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15965727#comment-15965727 ]
ASF GitHub Bot commented on IGNITE-3018: ---------------------------------------- GitHub user tledkov-gridgain opened a pull request: https://github.com/apache/ignite/pull/1779 IGNITE-3018 Cache affinity calculation is slow with large nodes number You can merge this pull request into a Git repository by running: $ git pull https://github.com/gridgain/apache-ignite ignite-3018 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/ignite/pull/1779.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1779 ---- commit ed35a9eb6f02771c5996209a1e19a4b0557309b6 Author: tledkov-gridgain <tled...@gridgain.com> Date: 2017-02-27T09:49:31Z IGNITE-3018: RendezvousAffinityFunction performance tuning commit 3a6d17c2250158b54e3573af23b9b1534c3c8e92 Author: tledkov-gridgain <tled...@gridgain.com> Date: 2017-02-27T10:57:36Z IGNITE-3018: fix review issues commit db5512b65ce273d955ecd1c2381ade84491895ad Author: tledkov-gridgain <tled...@gridgain.com> Date: 2017-03-02T14:32:04Z Merge branch 'ignite-2.0' into ignite-3018 commit 163c05b6cea25aec0ca3b4ae4552338ed683631f Author: tledkov-gridgain <tled...@gridgain.com> Date: 2017-04-12T12:18:14Z Merge branch '_master' into ignite-3018 # Conflicts: # modules/core/src/main/java/org/apache/ignite/cache/affinity/rendezvous/RendezvousAffinityFunction.java commit 3695d960597a5fdbebf43bf9a3bb57f85f4f394b Author: tledkov-gridgain <tled...@gridgain.com> Date: 2017-04-12T12:18:57Z IGNITE-3018: special assignment calculation for replicated cache commit 9dfed00ba8be7676dc427f329fb9f557f71d4d21 Author: tledkov-gridgain <tled...@gridgain.com> Date: 2017-04-12T12:21:37Z IGNITE-3018: exchange fix ---- > Cache affinity calculation is slow with large nodes number > ---------------------------------------------------------- > > Key: IGNITE-3018 > URL: https://issues.apache.org/jira/browse/IGNITE-3018 > Project: Ignite > Issue Type: Bug > Components: cache > Reporter: Semen Boikov > Assignee: Yakov Zhdanov > Labels: important > Fix For: 2.0 > > Attachments: 003.png, 004.png, 008.png, 016.png, 064.png, 100.png, > 128.png, 200.png, 256.png, 400.png, 600.png, balanced.003.png, > balanced.004.png, balanced.008.png, balanced.016.png, balanced.064.png, > balanced.100.png, balanced.128.png, balanced.200.png, balanced.256.png, > balanced.400.png, balanced.600.png > > > With large number of cache server nodes (> 200) RendezvousAffinityFunction > and FairAffinityFunction work pretty slow . > For RendezvousAffinityFunction.assignPartitions can take hundredes of > milliseconds, for FairAffinityFunction it can take seconds. > For RendezvousAffinityFunction most time is spent in MD5 hash calculation and > nodes list sorting. As optimization we can try to cache {partion, node} MD5 > hash or try another hash function. Also several minor optimizations are > possible (avoid unncecessary allocations, only one thread local 'get', etc). -- This message was sent by Atlassian JIRA (v6.3.15#6346)