Real-time parallel hashing on the GPU
We demonstrate an efficient data-parallel algorithm for building large hash tables of millions of elements in real-time. We consider two parallel algorithms for the construction: a classical sparse perfect hashing approach, and cuckoo hashing, which packs elements densely by allowing an element to b...
Gespeichert in:
Veröffentlicht in: | ACM transactions on graphics 2009-12, Vol.28 (5), p.1-9 |
---|---|
Hauptverfasser: | , , , , , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | 9 |
---|---|
container_issue | 5 |
container_start_page | 1 |
container_title | ACM transactions on graphics |
container_volume | 28 |
creator | Alcantara, Dan A Sharf, Andrei Abbasinejad, Fatemeh Sengupta, Shubhabrata Mitzenmacher, Michael Owens, John D Amenta, Nina |
description | We demonstrate an efficient data-parallel algorithm for building large hash tables of millions of elements in real-time. We consider two parallel algorithms for the construction: a classical sparse perfect hashing approach, and cuckoo hashing, which packs elements densely by allowing an element to be stored in one of multiple possible locations. Our construction is a hybrid approach that uses both algorithms. We measure the construction time, access time, and memory usage of our implementations and demonstrate real-time performance on large datasets: for 5 million key-value pairs, we construct a hash table in 35.7 ms using 1.42 times as much memory as the input data itself, and we can access all the elements in that hash table in 15.3 ms. For comparison, sorting the same data requires 36.6 ms, but accessing all the elements via binary search requires 79.5 ms. Furthermore, we show how our hashing methods can be applied to two graphics applications: 3D surface intersection for moving data and geometric hashing for image matching. |
doi_str_mv | 10.1145/1618452.1618500 |
format | Article |
fullrecord | <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_miscellaneous_743736470</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>1283694949</sourcerecordid><originalsourceid>FETCH-LOGICAL-c347t-71c481dd1e6a49edaac5584599530b30be154cdd71fdbecb453c62ac930031893</originalsourceid><addsrcrecordid>eNp9kE1Lw0AQhhdRMFbPXnMRvaSdyX4lRylahYIi9rxsNhMT2SQ1mx7896Y0Z5mB9_LwMvMwdouwRBRyhQozIdPlMSXAGYtQSp1orrJzFoHmkAAHvGRXIXwDgBJCRezug6xPxqaleG8H6z35uLahbrqvuO_isaZ48767ZheV9YFu5lyw3fPT5_ol2b5tXteP28RxocdEoxMZliWSsiKn0lon5XRUnksOxbSEUriy1FiVBblCSO5Ual3OAThmOV-w-1Pvfuh_DhRG0zbBkfe2o_4QjBZ8-kdomMiHf0lMM65yMc2Erk6oG_oQBqrMfmhaO_waBHNUZ2Z1ZlbH_wCttV3k</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>1283694949</pqid></control><display><type>article</type><title>Real-time parallel hashing on the GPU</title><source>ACM Digital Library Complete</source><creator>Alcantara, Dan A ; Sharf, Andrei ; Abbasinejad, Fatemeh ; Sengupta, Shubhabrata ; Mitzenmacher, Michael ; Owens, John D ; Amenta, Nina</creator><creatorcontrib>Alcantara, Dan A ; Sharf, Andrei ; Abbasinejad, Fatemeh ; Sengupta, Shubhabrata ; Mitzenmacher, Michael ; Owens, John D ; Amenta, Nina</creatorcontrib><description>We demonstrate an efficient data-parallel algorithm for building large hash tables of millions of elements in real-time. We consider two parallel algorithms for the construction: a classical sparse perfect hashing approach, and cuckoo hashing, which packs elements densely by allowing an element to be stored in one of multiple possible locations. Our construction is a hybrid approach that uses both algorithms. We measure the construction time, access time, and memory usage of our implementations and demonstrate real-time performance on large datasets: for 5 million key-value pairs, we construct a hash table in 35.7 ms using 1.42 times as much memory as the input data itself, and we can access all the elements in that hash table in 15.3 ms. For comparison, sorting the same data requires 36.6 ms, but accessing all the elements via binary search requires 79.5 ms. Furthermore, we show how our hashing methods can be applied to two graphics applications: 3D surface intersection for moving data and geometric hashing for image matching.</description><identifier>ISSN: 0730-0301</identifier><identifier>EISSN: 1557-7368</identifier><identifier>DOI: 10.1145/1618452.1618500</identifier><language>eng</language><subject>Access time ; Algorithms ; Construction ; Hash based algorithms ; Real time ; Tables ; Three dimensional</subject><ispartof>ACM transactions on graphics, 2009-12, Vol.28 (5), p.1-9</ispartof><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c347t-71c481dd1e6a49edaac5584599530b30be154cdd71fdbecb453c62ac930031893</citedby><cites>FETCH-LOGICAL-c347t-71c481dd1e6a49edaac5584599530b30be154cdd71fdbecb453c62ac930031893</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,780,784,27924,27925</link.rule.ids></links><search><creatorcontrib>Alcantara, Dan A</creatorcontrib><creatorcontrib>Sharf, Andrei</creatorcontrib><creatorcontrib>Abbasinejad, Fatemeh</creatorcontrib><creatorcontrib>Sengupta, Shubhabrata</creatorcontrib><creatorcontrib>Mitzenmacher, Michael</creatorcontrib><creatorcontrib>Owens, John D</creatorcontrib><creatorcontrib>Amenta, Nina</creatorcontrib><title>Real-time parallel hashing on the GPU</title><title>ACM transactions on graphics</title><description>We demonstrate an efficient data-parallel algorithm for building large hash tables of millions of elements in real-time. We consider two parallel algorithms for the construction: a classical sparse perfect hashing approach, and cuckoo hashing, which packs elements densely by allowing an element to be stored in one of multiple possible locations. Our construction is a hybrid approach that uses both algorithms. We measure the construction time, access time, and memory usage of our implementations and demonstrate real-time performance on large datasets: for 5 million key-value pairs, we construct a hash table in 35.7 ms using 1.42 times as much memory as the input data itself, and we can access all the elements in that hash table in 15.3 ms. For comparison, sorting the same data requires 36.6 ms, but accessing all the elements via binary search requires 79.5 ms. Furthermore, we show how our hashing methods can be applied to two graphics applications: 3D surface intersection for moving data and geometric hashing for image matching.</description><subject>Access time</subject><subject>Algorithms</subject><subject>Construction</subject><subject>Hash based algorithms</subject><subject>Real time</subject><subject>Tables</subject><subject>Three dimensional</subject><issn>0730-0301</issn><issn>1557-7368</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2009</creationdate><recordtype>article</recordtype><recordid>eNp9kE1Lw0AQhhdRMFbPXnMRvaSdyX4lRylahYIi9rxsNhMT2SQ1mx7896Y0Z5mB9_LwMvMwdouwRBRyhQozIdPlMSXAGYtQSp1orrJzFoHmkAAHvGRXIXwDgBJCRezug6xPxqaleG8H6z35uLahbrqvuO_isaZ48767ZheV9YFu5lyw3fPT5_ol2b5tXteP28RxocdEoxMZliWSsiKn0lon5XRUnksOxbSEUriy1FiVBblCSO5Ual3OAThmOV-w-1Pvfuh_DhRG0zbBkfe2o_4QjBZ8-kdomMiHf0lMM65yMc2Erk6oG_oQBqrMfmhaO_waBHNUZ2Z1ZlbH_wCttV3k</recordid><startdate>20091201</startdate><enddate>20091201</enddate><creator>Alcantara, Dan A</creator><creator>Sharf, Andrei</creator><creator>Abbasinejad, Fatemeh</creator><creator>Sengupta, Shubhabrata</creator><creator>Mitzenmacher, Michael</creator><creator>Owens, John D</creator><creator>Amenta, Nina</creator><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>20091201</creationdate><title>Real-time parallel hashing on the GPU</title><author>Alcantara, Dan A ; Sharf, Andrei ; Abbasinejad, Fatemeh ; Sengupta, Shubhabrata ; Mitzenmacher, Michael ; Owens, John D ; Amenta, Nina</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c347t-71c481dd1e6a49edaac5584599530b30be154cdd71fdbecb453c62ac930031893</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2009</creationdate><topic>Access time</topic><topic>Algorithms</topic><topic>Construction</topic><topic>Hash based algorithms</topic><topic>Real time</topic><topic>Tables</topic><topic>Three dimensional</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Alcantara, Dan A</creatorcontrib><creatorcontrib>Sharf, Andrei</creatorcontrib><creatorcontrib>Abbasinejad, Fatemeh</creatorcontrib><creatorcontrib>Sengupta, Shubhabrata</creatorcontrib><creatorcontrib>Mitzenmacher, Michael</creatorcontrib><creatorcontrib>Owens, John D</creatorcontrib><creatorcontrib>Amenta, Nina</creatorcontrib><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>ACM transactions on graphics</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Alcantara, Dan A</au><au>Sharf, Andrei</au><au>Abbasinejad, Fatemeh</au><au>Sengupta, Shubhabrata</au><au>Mitzenmacher, Michael</au><au>Owens, John D</au><au>Amenta, Nina</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Real-time parallel hashing on the GPU</atitle><jtitle>ACM transactions on graphics</jtitle><date>2009-12-01</date><risdate>2009</risdate><volume>28</volume><issue>5</issue><spage>1</spage><epage>9</epage><pages>1-9</pages><issn>0730-0301</issn><eissn>1557-7368</eissn><abstract>We demonstrate an efficient data-parallel algorithm for building large hash tables of millions of elements in real-time. We consider two parallel algorithms for the construction: a classical sparse perfect hashing approach, and cuckoo hashing, which packs elements densely by allowing an element to be stored in one of multiple possible locations. Our construction is a hybrid approach that uses both algorithms. We measure the construction time, access time, and memory usage of our implementations and demonstrate real-time performance on large datasets: for 5 million key-value pairs, we construct a hash table in 35.7 ms using 1.42 times as much memory as the input data itself, and we can access all the elements in that hash table in 15.3 ms. For comparison, sorting the same data requires 36.6 ms, but accessing all the elements via binary search requires 79.5 ms. Furthermore, we show how our hashing methods can be applied to two graphics applications: 3D surface intersection for moving data and geometric hashing for image matching.</abstract><doi>10.1145/1618452.1618500</doi><tpages>9</tpages><oa>free_for_read</oa></addata></record> |
fulltext | fulltext |
identifier | ISSN: 0730-0301 |
ispartof | ACM transactions on graphics, 2009-12, Vol.28 (5), p.1-9 |
issn | 0730-0301 1557-7368 |
language | eng |
recordid | cdi_proquest_miscellaneous_743736470 |
source | ACM Digital Library Complete |
subjects | Access time Algorithms Construction Hash based algorithms Real time Tables Three dimensional |
title | Real-time parallel hashing on the GPU |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-06T13%3A28%3A31IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Real-time%20parallel%20hashing%20on%20the%20GPU&rft.jtitle=ACM%20transactions%20on%20graphics&rft.au=Alcantara,%20Dan%20A&rft.date=2009-12-01&rft.volume=28&rft.issue=5&rft.spage=1&rft.epage=9&rft.pages=1-9&rft.issn=0730-0301&rft.eissn=1557-7368&rft_id=info:doi/10.1145/1618452.1618500&rft_dat=%3Cproquest_cross%3E1283694949%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=1283694949&rft_id=info:pmid/&rfr_iscdi=true |