TL;DR
This paper investigates SIMD-optimized search algorithms for sorted data, introducing a hash-based method leveraging floating point representation, achieving up to 8x speedup in a real-world EOSPAC case study.
Contribution
The paper presents a novel SIMD-friendly hash-based search algorithm exploiting floating point properties, improving performance over traditional methods in table-lookup applications.
Findings
Achieved up to 8x speedup in EOSPAC library searches
Developed a hash-based search leveraging floating point exponent binning
Demonstrated generalizability of techniques to other search algorithms
Abstract
Applications often require a fast, single-threaded search algorithm over sorted data, typical in table-lookup operations. We explore various search algorithms for a large number of search candidates over a relatively small array of logarithmically-distributed sorted data. These include an innovative hash-based search that takes advantage of floating point representation to bin data by the exponent. Algorithms that can be optimized to take advantage of SIMD vector instructions are of particular interest. We then conduct a case study applying our results and analyzing algorithmic performance with the EOSPAC package. EOSPAC is a table look-up library for manipulation and interpolation of SESAME equation-of-state data. Our investigation results in a couple of algorithms with better performance with a best case 8x speedup over the original EOSPAC Hunt-and-Locate implementation. Our…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
