[ https://issues.apache.org/jira/browse/GEODE-8213?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17123953#comment-17123953 ]
Alberto Gomez commented on GEODE-8213: -------------------------------------- Thanks Jake I tried first shared locks but the implementation in the boost version we have is suboptimal so I found no gain. I later tried with the shared lock that comes with C++14 and there I was able to see a big gain. My final implementation has been using lock free structures and given that the gain was a little better than with C++14 and that it was not required to upgrade the C++ version this is the one I am planning to include. I will check the unit style benchmarks you pointed me at. > C++ native client performance bottleneck in access to serialization registry > ---------------------------------------------------------------------------- > > Key: GEODE-8213 > URL: https://issues.apache.org/jira/browse/GEODE-8213 > Project: Geode > Issue Type: Improvement > Components: native client > Reporter: Alberto Gomez > Assignee: Alberto Gomez > Priority: Major > Fix For: 1.14.0 > > > It's been observed that when the number of threads used in a Geode client > using PdxSerialization is greater than 8, there is an important drop in > performance. > Analysing the client process behavior with perf, it has been observed a very > high CPU consumption by a spinlock > (apache::geode::util::concurrent::spinlock_mutex::lock) used when accessing > the serialization registry . -- This message was sent by Atlassian Jira (v8.3.4#803005)