Improving Merge Sort and Quick Sort Performance by Utilizing Alphadev's Sorting Networks as Base Cases
Anas Gamal Aly, Anders E. Jensen, Hala ElAarag
TL;DR
This paper investigates integrating AlphaDev's assembly-optimized sorting networks, designed for small fixed sizes, as base cases within classical Merge Sort and Quick Sort. Through 11 network configurations tested on random, sorted, and nearly sorted data from 10k to 1M elements, the study demonstrates substantial performance gains, particularly for Merge Sort with the 6–8 configuration (up to approximately two times faster on certain inputs) and for sorted data in Quick Sort with the 3–5 configuration. The results reveal input-distribution-dependent benefits, with Merge Sort often outperforming Quick Sort on random data, while Quick Sort remains competitive on nearly sorted inputs. The work highlights the practical potential of combining AI-derived, low-level optimizations with traditional algorithms, while noting architecture limitations and suggesting directions for expanding network sizes and cross-architecture applicability to broaden impact.
Abstract
Recent work by Google DeepMind introduced assembly-optimized sorting networks that achieve faster performance for small fixed-size arrays (3-8). In this research, we investigate the integration of these networks as base cases in classical divide-and-conquer sorting algorithms, specifically Merge Sort and Quick Sort, to leverage these efficient sorting networks for small subarrays generated during the recursive process. We conducted benchmarks with 11 different optimization configurations and compared them to classical Merge Sort and Quick Sort. We tested the configurations with random, sorted and nearly sorted arrays. Our optimized Merge Sort, using a configuration of three sorting networks (sizes 6, 7, and 8), achieves at least 1.5x speedup for random and nearly sorted arrays, and at least 2x speedup for sorted arrays, in comparison to classical Merge Sort. This optimized Merge Sort surpasses both classical Quick Sort and similarly optimized Quick Sort variants when sorting random arrays of size 10,000 and larger. When comparing our optimized Quick Sort to classical Quick Sort, we observe a 1.5x speedup using the 3-to-5 configuration on sorted arrays of size 10,000. The 6-to-8 configuration maintains a consistent 1.5x improvement across sorted arrays from 25,000 to 1 million elements. Our findings demonstrate the potential of integrating AI-optimized sorting networks to enhance the performance of classical sorting algorithms.
