Patience is a Virtue: Revisiting Merge and Sort on Modern Processors
Summary: Revisits in-memory sort/merge with Patience Sort, CPU-aware tweaks. P3 Sort (Ping-Pong Patience+Sort) and ping-pong merge; competitive with Quicksort and Timsort on random and almost-sorted data; P3 replacement selection for logs with bounded disorder. (summarized by gpt-5-nano on Feb 09 2026)
Incoming Non-self Citations Over Time
Authors
- 1. Badrish Chandramouli (Microsoft)
- 2. Jonathan Goldstein (Microsoft)
BibTeX Citation
@inproceedings{chandramouli_sigmod14,
title = {{Patience is a Virtue: Revisiting Merge and Sort on Modern Processors}},
author = {Chandramouli, Badrish and Goldstein, Jonathan},
series = {{SIGMOD} '14},
booktitle = {Proceedings of the {ACM} {SIGMOD} International Conference on Management of Data},
publisher = {Association for Computing Machinery},
doi = {10.1145/2588555.2593662},
url = {https://dl.acm.org/doi/10.1145/2588555.2593662},
year = {2014}
}
Incoming Citations (Sorted by Pagerank)
Showing 4 of 4 citing papers.
| Rank | Citing Paper | Year | Venue | Pagerank |
|---|---|---|---|---|
| 2,250 | Cache-Efficient Aggregation: Hashing Is Sorting | 2015 | SIGMOD | 8.8694486e-05 |
| 2,667 | A Memory Bandwidth-Efficient Hybrid Radix Sort on GPUs | 2017 | SIGMOD | 8.2756346e-05 |
| 2,910 | APEX: A High-Performance Learned Index on Persistent Memory | 2022 | VLDB | 7.9700885e-05 |
| 11,348 | Cache-Efficient Top-k Aggregation over High Cardinality Large Datasets | 2024 | VLDB | 5.093636e-05 |
Previous
Page 1 / 1
Next
Outgoing Citations (Sorted by Pagerank)
Showing 5 of 5 cited papers.
Citations counted here include only citations to other VLDB/SIGMOD/CIDR/PODS papers in this database.
| Rank | Cited Paper | Year | Venue | Pagerank |
|---|---|---|---|---|
| 209 | Sort vs. Hash Revisited: Fast Join Implementation on Modern Multi-Core CPUs | 2009 | VLDB | 0.00024932174 |
| 252 | Multi-Core, Main-Memory Joins: Sort vs. Hash Revisited | 2014 | VLDB | 0.00023242719 |
| 423 | Massively Parallel Sort-Merge Joins in Main Memory Multi-Core Database Systems | 2012 | VLDB | 0.00018725853 |
| 712 | Efficient Implementation of Sorting on Multi-Core SIMD CPU Architecture | 2008 | VLDB | 0.0001468812 |
| 2,568 | Timeline Index: A Unified Data Structure for Processing Queries on Temporal Data in SAP HANA | 2013 | SIGMOD | 8.4096765e-05 |
Previous
Page 1 / 1
Next
Semantically Similar Papers
| # | Overall Rank | Paper | Year | Venue |
|---|---|---|---|---|
| 1 | 2,667 | A Memory Bandwidth-Efficient Hybrid Radix Sort on GPUs | 2017 | SIGMOD |
| 2 | 4,955 | Dynamic Memory Adjustment for External Mergesort | 1997 | VLDB |
| 3 | 4,177 | SIMD- and Cache-Friendly Algorithm for Sorting an Array of Structures | 2015 | VLDB |
| 4 | 7,242 | Fast Multi-Column Sorting in Main-Memory Column-Stores | 2016 | SIGMOD |
| 5 | 1,177 | A Comprehensive Study of Main-Memory Partitioning and its Application to Large-Scale Comparison- and Radix-Sort | 2014 | SIGMOD |
| 6 | 2,139 | CellSort: High Performance Sorting on the Cell Processor | 2007 | VLDB |
| 7 | 712 | Efficient Implementation of Sorting on Multi-Core SIMD CPU Architecture | 2008 | VLDB |
| 8 | 7,705 | A Study of Sort Algorithms for Multiprocessor Database Machines | 1986 | VLDB |
| 9 | 12,033 | A Study of Sorting Algorithms on Approximate Memory | 2016 | SIGMOD |
| 10 | 678 | Fast Sort on CPUs and GPUs: A Case for Bandwidth Oblivious SIMD Sort | 2010 | SIGMOD |