Scalable Interaction with Parallel Applications
Publication Type: Talk
A range of tools, from parallel debuggers to performance analysis/visualization to simulation visualizers, can benefit from interaction with a running parallel application. To be effective, this live interaction needs to be highly scalable. Such scalability for parallel applications is available in the form of the Charm++/AMPI runtime system. Charm++ is an object-based, message-driven model of parallel programming that has enabled high levels of scalability for complex applications like NAMD, a production biomolecular simulation code frequently used on Teragrid systems. External tools may communicate via a socket connection with an executing parallel Charm++ application through our Converse Client- Server (CCS) interface and framework. We demonstrate various tools that exploit the scalable properties of Charm++’s adaptive runtime to intersperse interaction activity and communication with the running application’s work. We show how this allows tools to interact effectively and scalably with parallel applications running on thousands of processors.