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,245 | Cache-Efficient Aggregation: Hashing Is Sorting | 2015 | SIGMOD | 8.7649358e-05 |
| 2,487 | A Memory Bandwidth-Efficient Hybrid Radix Sort on GPUs | 2017 | SIGMOD | 8.3979719e-05 |
| 2,866 | APEX: A High-Performance Learned Index on Persistent Memory | 2022 | VLDB | 7.9258875e-05 |
| 11,666 | Cache-Efficient Top-k Aggregation over High Cardinality Large Datasets | 2024 | VLDB | 4.9793485e-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 |
|---|---|---|---|---|
| 210 | Sort vs. Hash Revisited: Fast Join Implementation on Modern Multi-Core CPUs | 2009 | VLDB | 0.00024851502 |
| 251 | Multi-Core, Main-Memory Joins: Sort vs. Hash Revisited | 2014 | VLDB | 0.00023143736 |
| 423 | Massively Parallel Sort-Merge Joins in Main Memory Multi-Core Database Systems | 2012 | VLDB | 0.00018491327 |
| 722 | Efficient Implementation of Sorting on Multi-Core SIMD CPU Architecture | 2008 | VLDB | 0.00014488003 |
| 2,611 | Timeline Index: A Unified Data Structure for Processing Queries on Temporal Data in SAP HANA | 2013 | SIGMOD | 8.2275795e-05 |
Previous
Page 1 / 1
Next
Semantically Similar Papers
| # | Overall Rank | Paper | Year | Venue |
|---|---|---|---|---|
| 1 | 2,487 | A Memory Bandwidth-Efficient Hybrid Radix Sort on GPUs | 2017 | SIGMOD |
| 2 | 4,692 | Dynamic Memory Adjustment for External Mergesort | 1997 | VLDB |
| 3 | 4,225 | SIMD- and Cache-Friendly Algorithm for Sorting an Array of Structures | 2015 | VLDB |
| 4 | 7,495 | Fast Multi-Column Sorting in Main-Memory Column-Stores | 2016 | SIGMOD |
| 5 | 1,116 | A Comprehensive Study of Main-Memory Partitioning and its Application to Large-Scale Comparison- and Radix-Sort | 2014 | SIGMOD |
| 6 | 2,161 | CellSort: High Performance Sorting on the Cell Processor | 2007 | VLDB |
| 7 | 722 | Efficient Implementation of Sorting on Multi-Core SIMD CPU Architecture | 2008 | VLDB |
| 8 | 7,854 | A Study of Sort Algorithms for Multiprocessor Database Machines | 1986 | VLDB |
| 9 | 12,328 | A Study of Sorting Algorithms on Approximate Memory | 2016 | SIGMOD |
| 10 | 661 | Fast Sort on CPUs and GPUs: A Case for Bandwidth Oblivious SIMD Sort | 2010 | SIGMOD |