Building systems that alter program behavior during execution based on user-specified criteria (computational steering systems) has been a recent research topic, particularly among the high performance computing community. To enable a computational steering system with powerful visualization capabilities to run on distributed memory architectures, a distributed infrastructure (or runtime system) must first be built. This infrastructure would permit harnessing a variety of machines to collaborate on an interactive simulation. Building such an infrastructure requires strategies for coordinating execution across machines (concurrency control mechanisms), mechanisms for fast data transfer between machines, and mechanisms for user manipulation of remote execution. We are creating a distributed infrastructure for the SCIRun computational steering system. SCIRun, a scientific problem solving environment (PSE), provides the ability to interactively guide or steer a running computation. Initially designed for a shared memory multiprocessor, SCIRun is a tightly integrated, multi-threaded framework for composing scientific applications from existing or new components. High performance computing is needed to maintain interactivity for scientists and engineers running simulations. Extending such a performance-sensitive application toolkit to enable pieces of the computation to run on different machine architectures all within the same computation would prove very useful. Not only could many different machines execute this framework, but also several machines could be configured to work synergistically on computations.
展开▼