TopSort: A High-Performance Two-Phase Sorting Accelerator Optimized on HBM-based FPGAs
Weikang Qiao, Licheng Guo, Zhenman Fang, Mau-Chung Frank, Chang, Jason Cong

TL;DR
TopSort is a two-phase FPGA-based sorting accelerator optimized for HBM memory, achieving high throughput and outperforming existing CPU and FPGA sorters by leveraging HBM-specific optimizations.
Contribution
It introduces a novel two-phase sorting architecture that fully exploits HBM bandwidth on FPGAs, with specific optimizations to reduce resource use and enhance performance.
Findings
Sorts up to 4 GB data with 15.6 GB/s throughput
Outperforms state-of-the-art CPU and FPGA sorters by 6.7x and 2.2x
Utilizes all 32 HBM channels effectively
Abstract
The emergence of high-bandwidth memory (HBM) brings new opportunities to boost the performance of sorting acceleration on FPGAs, which was conventionally bounded by the available off-chip memory bandwidth. However, it is nontrivial for designers to fully utilize this immense bandwidth. First, the existing sorter designs cannot be directly scaled at the increasing rate of available off-chip bandwidth, as the required on-chip resource usage grows at a much faster rate and would bound the sorting performance in turn. Second, designers need an in-depth understanding of HBM characteristics to effectively utilize the HBM bandwidth. To tackle these challenges, we present TopSort, a novel two-phase sorting solution optimized for HBM-based FPGAs. In the first phase, 16 merge trees work in parallel to fully utilize 32 HBM channels. In the second phase, TopSort reuses the logic from phase one to…
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsInterconnection Networks and Systems · Parallel Computing and Optimization Techniques · Algorithms and Data Compression
