The influence of caches on the performance of sorting

@inproceedings{LaMarca1997TheIO,
  title={The influence of caches on the performance of sorting},
  author={Anthony LaMarca and Richard E. Ladner},
  booktitle={SODA '97},
  year={1997}
}
We investigate the effect that caches have on the performance of sorting algorithms both experimentally and analytically. To address the performance problems that high cache miss penalties introduce we restructure mergesort, quicksort, and heapsort in order to improve their cache locality. For all three algorithms the improvement in cache performance leads to a reduction in total execution time. We also investigate the performance of radix sort. Despite the extremely low instruction count… Expand
On the Cache Performance of Time-Efficient Sorting Algorithms
The cache configuration is an important concern affecting the performance of sorting algorithms. In this paper, we give a performance evaluation of cache tuned time efficient sorting algorithms. WeExpand
The influence of caches on the performance of heaps
TLDR
This paper investigates the cache performance of implicit heaps and presents an analytical model called collective analysis that allows cache performance to be predicted as a function of both cacheconfiguration and algorithm configuration. Expand
Application and Performance Analysis of Cache Effected Merge Sort Algorithms
One of the most significant factors that affect run time of a program is the cache behavior. Especially, the efficient use of cache in the programs that process huge data with an iterative manner isExpand
Analysing Cache Effects in Distribution Sorting
TLDR
A cache analysis of distribution sorting algorithms is presented which predicts the cache miss rate of these algorithms quite well and it is shown that the integer sorting algorithm MSB radix sort can be used very effectively on floating point data. Expand
Cache performance analysis of traversals and random accesses
TLDR
A model for studying the cache performance of algorithms in a direct-mapped cache is described and exact expressions for the number of cache misses per memory access are given for several commonly occurring memory access patterns. Expand
Improving memory performance of sorting algorithms
TLDR
This study restructure the mergesort and quicksort algorithms further by integrating tiling, padding, and buffering techniques and by repartitioning the data set to reduce other types of cache misses. Expand
The Performance of In-memory Sorting
The design and analysis of in-memory computer programs has traditionally focused on the computation cost. The importance of the memory system has long been recognized when dealing with programs thatExpand
Cache performance analysis of algorithms
TLDR
The cache performance analysis of algorithms whose primary goal is to determine the number of cache hits and cache misses that an algorithm incurs is developed, view an algorithm as a combination of basic memory access patterns, analyze each pattern's cache performance, and apply the analysis to accurately predict the cache performance of the algorithm. Expand
A Model for the Effect of Caching on Algorithmic Efficiency in Radix based Sorting
  • A. Maus, S. Gjessing
  • Computer Science
  • International Conference on Software Engineering Advances (ICSEA 2007)
  • 2007
This paper demonstrates that the algorithmic performance of end user programs may be greatly affected by the two or three level caching scheme of the processor, and we introduce a general but simpleExpand
Efficient sorting using registers and caches
TLDR
This paper introduces a new cache-conscious sorting algorithm, R-MERGE, which achieves better performance in practice over algorithms that are superior in the theoretical models, and quantifies the performance effects of features not reflected in the models. Expand
...
1
2
3
4
5
...

References

SHOWING 1-10 OF 113 REFERENCES
Caches and algorithms
TLDR
This thesis focuses on demonstrating the potential performance gains of cache-conscious design, and introduces collective analysis, a framework within which cache performance can be predicted as a function of both cache and algorithm configuration. Expand
Improving the cache locality of memory allocation
TLDR
It is shown how the design of a memory allocator can significantly affect the reference locality for various applications, and measurements suggest an allocator design that is both very fast and has good locality of reference. Expand
Compiler optimizations for improving data locality
TLDR
This paper presents compiler optimizations to improve data locality based on a simple yet accurate cost model and demonstrates that these program transformations are useful for optimizing many programs. Expand
Cache interference phenomena
TLDR
The different types of cache interferences that can occur in numerical loop nests are identified and an analytical method is developed for detecting the occurrence of interferences and, more important, for computing the number of cache misses due to interferences. Expand
Avoiding conflict misses dynamically in large direct-mapped caches
TLDR
Using trace-driven simulation of applications and the operating system, it is shown that a CML buffer enables a large direct-mapped cache to perform nearly as well as a two-way set associative cache of equivalent size and speed, although with lower hardware cost and complexity. Expand
An analytical cache model
TLDR
An analytical cache model is developed that gives miss rates for a given trace as a function of cache size, degree of associativity, block size, subblock size, multiprogramming level, task switch interval, and observation interval. Expand
The influence of caches on the performance of heaps
As memory access times grow larger relative to processor cycle times, the cache performance of algorithms has an increasingly large impact on overall performance. Unfortunately, most commonly used ...
Page placement algorithms for large real-indexed caches
TLDR
This work develops several page placement algorithms, called careful-mapping algorithms, that try to select a page frame from a pool of available page frames that is likely to reduce cache contention. Expand
Cache Performance in the VAX-11/780
TLDR
Measurements are reported including the hit ratios of data and instruction references, the rate of cache invalidations by I/O, and the amount of waiting time due to cache misses. Expand
Optimal mapping in direct mapped cache environments
TLDR
It is shown that a cache which employs a random assignment policy, i.e., the assignment of an item is determined randomly, does not improve the expected hit ratio, and an assignment with best possible hit ratio is shown. Expand
...
1
2
3
4
5
...