Journal of Computer Science 7 (5): 591-599, 2011 ISSN 1549-3636 © 2011 Science Publications Corresponding Author: Jovana Knežević, Lehrstuhl für Computation in Engineering, Technische Universität München, Arcisstraße 21, 80333 München, Germany 591 Interactive Computing Framework for Engineering Applications Jovana Knezevic, Jerome Frisch, Ralf-Peter Mundani, Ernst Rank Department of Computation Engineering, Technische Universität München, Arcisstraße 21, 80333 Munich, Germany Abstract: Problem statement: Even though the computational steering state-of-the-art environments allow users to embed their simulation codes as a module for an interactive steering without the necessity for their own expertise in high-performance computing and visualisation, e.g., these environments are limited in their possible applications and mostly entail heavy code changes in order to integrate the existing code. Approach: In this study, we introduce an integration framework for engineering applications that supports distributed computations as well as visualization on-the-fly in order to reduce latency and enable a high degree of interactivity with only minor code alterations involved. Moreover, we tackle the problem of long communication delays in the case of huge data advent, which occur due to rigid coupling of simulation back-ends with visualization front-ends and handicap a user in exploring intuitively the relation of cause and effect. Results: The results for the first test cases are encouraging, both showing that we obtain excellent speedup in parallel scenarios and proving that the overhead introduced by the framework itself is negligible. Conclusion/Recommendations: Testing the case involving massively parallel simulation, as well as the integration of the framework into several parallel engineering applications are part of our imminent research. Key words: Interactive computing, Computational Steering Environment (CSE), pure multithreading, integration framework, engineering applications, Problem Solving Environment (PSE), Message Passing Interface (MPI) INTRODUCTION Interactive computing, in general, refers to the real- time interplay of a user with a program during the program runtime in order to estimate its actual state or tendency and to fetch an opportunity to react on variety of changes. Within numerical simulation experiments, specifically, this implies that the geometry of the simulated scene can be modified interactively altogether with boundary conditions or a distinct feature of the application, thus, the user can gain “insight concerning parameters, algorithmic behavior and optimization potentials” (Mulder et al., 1999). The commonly agreed central features of interactive computing in this case are: on the front end, a sophisticated user interface and the visualization of results on demand and, on the back-end, a separated steerable, often time- and memory- consuming simulation running on a high-performance cluster (Fig. 1). Even though powerful tools such as Van Liere and Van Wijk (1996); McCorquodale et al. (2000) and Reality Grid (2003) allow users to embed their simulation codes as a module for an interactive steering without the necessity for their own expertise in algorithms and data structures, high-performance computing and visualization, these tools are limited in their possible applications and mostly entail heavy code changes in order to integrate the existing code. Fig. 1: At the development front-end, the user guides the simulation in building a solution to his problem via graphical user interface, while on the back-end, an often time-and memory- consuming program is being executed