This book takes the following approach to presenting information.
Chapters 1, 2 and 3 provide background
information that helps you understand Exemplar architectures and
how HP compilers optimize your code.
Chapter 4 tells you how to derive performance gains
with minimal intervention.
Chapters 5 and 6 explain how to use more advanced
programming techniques to further improve performance.
Chapter 7 discusses message passing on HP-UX machines,
requiring even more manual intervention.
Chapter 8 presents coding tips and tells you about
problems you may encounter when using the techniques of the previous
chapters and how to enable even more aggressive optimizations.
The appendixes contain mostly reference information,
including a discussion of the Compiler Parallel Support Library
(CPSlib).
If you are interested in a general, comprehensive overview
of programming for Exemplar servers, read the chapters in order.
If you are interested in simply compiling existing programs
and getting them to run with minimal effort, start with chapters
3 and 8. Following the cross-references that interest you
will probably expose you to as much of the rest of the book as is
necessary.
If you are interested in getting maximum performance gains
for minimum programming effort, read chapters 3 and 4, then proceed
if necessary.
If you are willing to spend some time adding directives and
rewriting some of your code to realize significant performance benefits
(especially if your Exemplar server is equipped with multiple hypernodes),
read at least chapters 2 through 6.
If you are interested in running message-passing codes on
your Exemplar system, refer to Chapter 7, "Chapter 7 “Message-passing
programming”." You may also
want to read chapters 2 through 6 to see how the compilers can help
you with automatic optimizations.
If you are interested in very low-level control over parallelism
using the Compiler Parallel Support Library, start with Appendix F “Compiler Parallel
Support
Library”. Again, you may
want to refer to the other chapters to see how the compiler can
help with automatic optimizations.