<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Scalable hash map algorithm in Intel® Moderncode for Parallel Architectures</title>
    <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/Scalable-hash-map-algorithm/m-p/887929#M3641</link>
    <description>I think this can interesting for this forum too.&lt;BR /&gt;I've posted implementation of highly scalable concurrent hash map on TBB forum:&lt;BR /&gt;&lt;A href="http://software.intel.com/en-us/forums//topic/60494" target="_blank"&gt;http://software.intel.com/en-us/forums//topic/60494&lt;/A&gt;&lt;BR /&gt;(there is a C++ source attached)&lt;BR /&gt;&lt;BR /&gt;Implementation uses a bunch of advanced synchronization techniques, like timestamp validation, deferred memory reclamation and cache conscious data layout. As a result this implementation beats TBB's concurrent_hash_map by a factor of 50 on read-mostly workload on Intel Core 2 Quad (Q6600), and by a factor of 20 on modest write workload. The cost of read transaction (find operation) is about 30 cycles, which is basically equal to that of single-threaded hash map. Algorithm also have perfect linear scalability on read-mostly workload so on greater number of cores/processors it will have even higher performance difference with traditional lock-based synchronization (on 8 cores I expect &amp;gt;100x).&lt;BR /&gt;&lt;BR /&gt;Such synchronization techniques, I believe, is the way to deal with future many-core systems.&lt;BR /&gt;&lt;BR /&gt;</description>
    <pubDate>Thu, 11 Sep 2008 20:30:19 GMT</pubDate>
    <dc:creator>Dmitry_Vyukov</dc:creator>
    <dc:date>2008-09-11T20:30:19Z</dc:date>
    <item>
      <title>Scalable hash map algorithm</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/Scalable-hash-map-algorithm/m-p/887929#M3641</link>
      <description>I think this can interesting for this forum too.&lt;BR /&gt;I've posted implementation of highly scalable concurrent hash map on TBB forum:&lt;BR /&gt;&lt;A href="http://software.intel.com/en-us/forums//topic/60494" target="_blank"&gt;http://software.intel.com/en-us/forums//topic/60494&lt;/A&gt;&lt;BR /&gt;(there is a C++ source attached)&lt;BR /&gt;&lt;BR /&gt;Implementation uses a bunch of advanced synchronization techniques, like timestamp validation, deferred memory reclamation and cache conscious data layout. As a result this implementation beats TBB's concurrent_hash_map by a factor of 50 on read-mostly workload on Intel Core 2 Quad (Q6600), and by a factor of 20 on modest write workload. The cost of read transaction (find operation) is about 30 cycles, which is basically equal to that of single-threaded hash map. Algorithm also have perfect linear scalability on read-mostly workload so on greater number of cores/processors it will have even higher performance difference with traditional lock-based synchronization (on 8 cores I expect &amp;gt;100x).&lt;BR /&gt;&lt;BR /&gt;Such synchronization techniques, I believe, is the way to deal with future many-core systems.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Thu, 11 Sep 2008 20:30:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/Scalable-hash-map-algorithm/m-p/887929#M3641</guid>
      <dc:creator>Dmitry_Vyukov</dc:creator>
      <dc:date>2008-09-11T20:30:19Z</dc:date>
    </item>
  </channel>
</rss>

