Looking for an examination copy?
This title is not currently available for examination. However, if you are interested in the title for your course we can consider offering an examination copy. To register your interest please contact firstname.lastname@example.org providing details of the course you are teaching.
Computational experiments on algorithms can supplement theoretical analysis by showing what algorithms, implementations, and speed-up methods work best for specific machines or problems. This book guides the reader through the nuts and bolts of the major experimental questions: What should I measure? What inputs should I test? How do I analyze the data? To answer these questions the book draws on ideas from algorithm design and analysis, computer systems, and statistics and data analysis. The wide-ranging discussion includes a tutorial on system clocks and CPU timers, a survey of strategies for tuning algorithms and data structures, a cookbook of methods for generating random combinatorial inputs, and a demonstration of variance reduction techniques. Numerous case studies and examples show how to apply these concepts. All the necessary concepts in computer architecture and data analysis are covered so that the book can be used by anyone who has taken a course or two in data structures and algorithms. A companion website, AlgLab (www.cs.amherst.edu/alglab) contains downloadable files, programs, and tools for use in experimental projects.Read more
- Covers a wide variety of topics from diverse areas: algorithmics, data analysis, architectures and operating systems, with all necessary background
- Includes tutorial discussions with lots of case studies to illustrate concepts
- Lets readers get started producing high-quality and reliable results
Reviews & endorsements
"Catherine McGeoch is one of the founders of the field of experimental algorithmics, helping to initiate the discipline with her 1986 dissertation, ‘Experimental Analysis of Algorithms.’ She has been deeply involved with the development of the methodology of experimental algorithmics over the past 25 years.
This book contains a breadth of advice, examples, and anecdotes, benefiting from her wealth of experience and many collaborations with other innovators in the discipline. The book provides a structured process for the Design of Experiments (DOE) that is tuned to the peculiarities of experiments on algorithms and programs. The book includes dozens of guidelines (68 in all) drawn from her decades ‘in the lab.’ These guidelines will save the reader loads of time by making the experimental process itself more efficient. Her advice is practical, authoritative, thoughtful, and applicable to the entire range of algorithm design, development, testing, and improvement.
McGeoch’s book presents a delightful dance of theoretical and experimental endeavors that in concert provide deep understanding of the algorithms that enable our information age as well as the means to the continual improvement of those fundamental algorithms."
Richard Snodgrass, University of ArizonaSee more reviews
"McGeoch (Amherst College) is one of the pioneers in the field. Overall, the book is a desirable companion to algorithm analysis texts, and will greatly benefit the algorithm experimenter community. Recommended."
D. Papamichail, University of Miami for Choice Magazine
"This book provides guidelines and suggestions for performing experimental algorithmic analysis. It contains many examples and includes links to a companion Web site with code for some specific experiments (http://www.cs.amherst.edu/alglab/). The book is a good read with generally good examples, and is short enough to be easily digested."
Jeffrey Putnam, Computing Reviews
"No one is more qualified than Dr. McGeoch to discuss this subject... Overall, this is a very valuable book for every computer scientist’s and programmer’s bookshelf. It is useful for students and practitioners alike, and is accessible at all levels from serving as an undergraduate supplement to a basic data structures and algorithms course, to its use as the main text in a senior undergraduate to graduate course on the design of real-world algorithms. Even seasoned programmers would benefit from learning the experimental methods given in this book and may gain new insights into analyzing the performance of their algorithmic implementations. As computer architecture continues to increase in complexity with multicore and many-core processors, novel memory subsystems, new accelerators such as Intel Xeon Phi and NVIDIA’s graphics processing units (GPUs), and data-intensive computing systems for Big Data problems, the book will become even more valuable for every computer scientist and programmer."
David A. Bader, Georgia Institute of Technology for INFORMS Journal on Computing
Be the first to review this book
- Date Published: January 2012
- format: Paperback
- isbn: 9780521173018
- length: 272 pages
- dimensions: 234 x 156 x 17 mm
- weight: 0.4kg
- contains: 78 b/w illus.
- availability: In stock
Table of Contents
2. A plan of attack
3. What to measure
4. Tuning algorithms, tuning code
5. The toolbox
6. Creating analysis-friendly data
7. Data analysis.
You are now leaving the Cambridge University Press website, your eBook purchase and download will be completed by our partner www.ebooks.com. Please see the permission section of the www.ebooks.com catalogue page for details of the print & copy limits on our eBooks.Continue ×