The foundations of parallel computation, especially the efficiency of computation, are the concern of this book. Distinguished international researchers have contributed fifteen chapters which together form a coherent stream taking the reader who has little prior knowledge of the field to a position of being familiar with leading edge issues. The book may also function as a source of teaching material and reference for researchers. The first part is devoted to the Parallel Random Access Machine (P-RAM) model of parallel computation. The initial chapters justify and define the model, which is then used for the development of algorithm design in a variety of application areas such as deterministic algorithms, randomisation and algorithm resilience. The second part deals with distributed memory models of computation. The question of efficiently implementing P-RAM algorithms within these models is addressed as are the immensely interesting prospects for general purpose parallel computation.