A full understanding of the common programming idioms and the interactions of application code and its underlying hardware and software are needed in order to develop good tools. This book explores software tools for parallel computer systems and details the current situation, outlines research issues, and discusses technology transition remedies. It also presents intuitive examples of the user interfaces best suited for illustrating these interactions.
In this book, developers of both debugging and performance analysis tools, application developers, and vendors discuss the technical and sociological problems facing the field. These discussions let you learn from others needs and frustrations in building and using tools on parallel systems. The book covers three major research themes:
- tools for task and data parallel languages
- techniques for real-time adaptive system control
- and optimization of heterogeneous metacomputing applications.