**DIMACS - Series in Discrete Mathematics and Theoretical Computer Science**

Volume: 50;
1999;
306 pp;
Hardcover

MSC: Primary 68; 65;

Print ISBN: 978-0-8218-1184-9

Product Code: DIMACS/50

List Price: $92.00

AMS Member Price: $73.60

MAA Member Price: $82.80

**Electronic ISBN: 978-1-4704-4008-4
Product Code: DIMACS/50.E**

List Price: $92.00

AMS Member Price: $73.60

MAA Member Price: $82.80

# External Memory Algorithms

Share this page *Edited by *
*James M. Abello; Jeffrey Scott Vitter*

A co-publication of the AMS and DIMACS

We are especially proud to announce the publication of this
DIMACS book—the 50th volume in this series, published by the
AMS. The series was established out of a collaborative venture geared
to unite the cutting-edge research at DIMACS with the resources at the
AMS to produce useful, well-designed, important mathematical and
computational sciences works. This volume is a hallmark in this firmly
grounded and well-received AMS series.

The AMS's 50th DIMACS volume is also particularly notable at this
time: The year 1999 marks the 10th anniversary of the founding of
DIMACS as a center. Participants in the DIMACS national research
project are Rutgers University, Princeton University, AT&T
Labs–Research, Bell Labs (Lucent Technologies), Telcordia Technologies,
and NEC Research Institute.

The success of the joint publishing venture between the AMS and DIMACS is
excellent. We continue to work concordantly with the Center to further their
goal of playing a key national leadership role in the development, application,
and dissemination of discrete mathematics and theoretical computer
science. This 50th DIMACS volume is in celebration of that dynamic,
ongoing partnership.

About the book:

Special techniques from computer science and mathematics are used
to solve combinatorial problems whose associated data require a
hierarchy of storage devices. These solutions employ “extended
memory algorithms”. The input/output (I/O) communication
between the levels of the hierarchy is often a significant bottleneck,
especially in applications that process massive amounts of data. Gains
in performance are possible by incorporating locality directly into
the algorithms and managing the contents of each storage level.

The relative difference in data access speeds is more apparent
between random access memory and magnetic disks. Therefore, much
research has been devoted to algorithms that focus on this I/O
bottleneck. These algorithms are usually called “external
memory”, “out-of-core”, or “I/O
algorithms”.

This volume presents new research results and current techniques
for the design and analysis of external memory algorithms. The
articles grew out of the workshop, “External Memory Algorithms and
Visualization” held at DIMACS. Leading researchers were invited to
give lectures and to contribute their work. Topics presented include
problems in computational geometry, graph theory, data compression,
disk scheduling, linear algebra, statistics, software libraries, text
and string processing, visualization, wavelets, and industrial
applications.

The vitality of the research and the interdisciplinary nature of the event
produced fruitful ground for the compelling fusion of ideas and methods. This
volume comprises the rich results that grew out of that process.

About the editors:

James Abello has been facing for several years a daily data avalanche that crosses the Infolab at AT&T-Shannon Laboratories. He and his colleagues have helped formulate some of the major challenges in real Massive Data Exploration. His encounter with Jeff Vitter has been a fruitful ground where practice and theory have been able to interact with success. Dr. Abello has a Ph.D. in Combinatorial Algorithms from the University of California, San Diego. He was the recipient of a University California President's Postdoctoral Fellowship in Computer Science. His publications include articles in combinatorics, graph theory, discrete and computational geometry, algorithm visualization systems, distributed computing and external memory algorithms. Dr. Abello has been with AT&T Research since 1995 and is currently a member of the Information Visualization Department at Shannon Laboratories, Florham Park, New Jersey.

Jeff Vitter is the co-creator of the widely used parallel I/O model and is a leader in the field of external memory algorithms and data structures. He is the Gilbert, Louis, and Edward Lehrman Professor of Computer Science and Chair of the Department of Computer Science at Duke University and Co-Director of the Center for Geometric Computing at Duke. He was previously on the faculty at Brown University. He has been named a Guggenheim Foundation Fellow, a Fellow of the Association for Computing Machinery, a Fellow of the Institute of Electrical and Electronics Engineers, a National Science Foundation Presidential Young Investigator, and a Fulbright Scholar. Professor Vitter works on efficient external memory algorithms in several domains, dealing with geographic information systems, sorting, FFT, matrix computations, graph traversal, range searching, data mining, and a variety of computational geometry and combinatorial problems. A related interest is how to take advantage of parallel disks and parallel hierarchical memories. He is currently doing algorithm engineering using the TPIE system. Other work includes prediction mechanisms for use by systems to improve locality for caching, prefetching, database query optimization, data mining, and resource management in mobile computers. He also works on image, video, and text compression, computational geometry, graphics, random sampling, and random variate generation.

Co-published with the Center for Discrete Mathematics and Theoretical Computer Science beginning with Volume 8. Volumes 1–7 were co-published with the Association for Computer Machinery (ACM).

#### Readership

Graduate students, research and applied mathematicians interested in computer science.

# Table of Contents

## External Memory Algorithms

- Cover Cover11
- Title page v6
- Contents vii8
- Foreword ix10
- Preface xi12
- External memory algorithms and data structures 114
- Synopsis data structures for massive data sets 3952
- Calculating robust depth measures for large data sets 7184
- Efficient cross-trees for external memory 87100
- Computing on data streams 107120
- On maximum clique problems in very large graphs 119132
- I/O-optimal computation of segment intersections 131144
- On showing lower bounds for external-memory computational geometry problems 139152
- A survey of out-of-core algorithms in numerical linear algebra 161174
- Concrete software libraries 181194
- S(b)-tree library: An efficient way of indexing data 207220
- ASP: Adaptive online parallel disk scheduling 223236
- Efficient schemes for distributing data on parallel memory systems 233246
- External memory techniques for isosurface extraction in scientific visualization 247260
- R-tree retrieval of unstructured volume data for visualization 279292
- Author index 293306
- Subject index 295308
- Back Cover Back Cover1321