next up previous contents
Next: Parallel Programs Up: Introduction and Overview Previous: Protocol Summary   Contents

Organization of this Book

In order to implement the protocol outlined above, you need to fully understand certain things about parallel programming in general. You also need to know how to quantitatively assess hardware perforamnce, both for the nodes and for the network. The next two parts of the book cover both of these points in detail. The third part of the book addresses the issues of comparative beowulf or cluster design - putting what you've learned about the task, the node hardware and the network together into a plan. This part also discusses potentially expensive design issues that are all too often forgotten - infrastructure costs and requirements, how to systematically compare the cost-benefit of designs, what to do with your beowulf as it ages.

The fourth and fifth parts of the book contain descriptions of and directions to whole ``beowulf solutions''. Again this is split into chapters on software - discussions of general parallel programming paradigms, examples of specific programs written to do HPC tasks; and hardware - how to craft a beowulf appropriate for different environments and purposes by yourself and how to find somebody who will do it for you (at a reasonable value-added markup).

The appendices and bibliography contain all sorts of useful stuff - URI directions to packages, source for various scriptlets that you might find useful. As this is intended to be a ``living book'' in the sense that it is continuously updated as new hardware and software appears, appendices may be used as a holding pen for new stuff before it makes it into the ``mainstream'' text. Even if you own a printed copy of this book, you might periodically check the online master from time to time to see if it has anything radically new.

At this point it is time to begin the serious work. We begin, appropriately enough, with a bit of mathematics. It isn't too difficult, but it is essential to the understanding of the principles of parallel program design - and the optimum design of a cluster intended to run the parallel program on.


next up previous contents
Next: Parallel Programs Up: Introduction and Overview Previous: Protocol Summary   Contents
Robert G. Brown 2003-05-12