[ https://issues.apache.org/jira/browse/IGNITE-1415?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Pavel Tupitsyn updated IGNITE-1415: ----------------------------------- Labels: .net (was: ) > .Net: Optimize handle registry. > ------------------------------- > > Key: IGNITE-1415 > URL: https://issues.apache.org/jira/browse/IGNITE-1415 > Project: Ignite > Issue Type: Task > Components: platforms > Affects Versions: 1.1.4 > Reporter: Vladimir Ozerov > Priority: Critical > Labels: .net > > The main problem with handle registry is CAS on a single shared variable. > This could result in a very bad performance under contention. > Several techniques can be applied here: > 1) Stripes. Assign some ID to a thread and then use it to pick correct stripe > for the thread. Be careful with false-sharing effects as stripes can be > located very close to each other. > 2) Cleanup with relaxed membars. When we are to remove the handle, no need > for full HB semantics. We are ok if subsequent calls to the same handle will > see not-killed object for a while. -- This message was sent by Atlassian JIRA (v6.3.4#6332)