RAM-efficient external memory sorting

Lars Arge, Mikkel Thorup

2 Citationer (Scopus)

Abstract

In recent years a large number of problems have been considered in external memory models of computation, where the complexity measure is the number of blocks of data that are moved between slow external memory and fast internal memory (also called I/Os). In practice, however, internal memory time often dominates the total running time once I/O-efficiency has been obtained. In this paper we initiate a study of algorithms for fundamental problems that are simultaneously I/O-efficient and internal memory efficient in the RAM model of computation. For sorting the conventional wisdom is to use merging base algorithms in external memory but we describe how this leads to suboptimal RAM performance. However, by using a splitting based algorithm in combination with existing RAM sorting techniques we obtain a sorting algorithm that is both I/O and RAM model efficient. Furthermore, we design an I/O- and RAM-efficient priority queue. Finally, we prove a sorting lower bound that shows that in most cases our results are optimal both in terms of I/O and internal computation.

OriginalsprogEngelsk
TidsskriftAlgorithmica
Vol/bind73
Udgave nummer4
Sider (fra-til)623-636
Antal sider14
ISSN0178-4617
DOI
StatusUdgivet - 1 dec. 2015

Fingeraftryk

Dyk ned i forskningsemnerne om 'RAM-efficient external memory sorting'. Sammen danner de et unikt fingeraftryk.

Citationsformater