120 likes | 292 Views
Towards Environment for Multiscale Applications. Katarzyna Rycerz , Eryk Ciepiela, Joanna Kocot, Marcin Nowak, Pawel Pierzcha ł a, Marian Bubak. Overview. Multiscale simulations - overview Tools for multiscale simulations MUSCLE-based multiscale application in GridSpace
E N D
Towards Environment for Multiscale Applications Katarzyna Rycerz, Eryk Ciepiela, Joanna Kocot, Marcin Nowak, Pawel Pierzchała,Marian Bubak
Overview • Multiscale simulations - overview • Tools for multiscale simulations • MUSCLE-based multiscale application in GridSpace • Example demo with In-stent restenosis application • Summary and future work
Multiscale Simulations • Consists of modules of different scale • Examples – e.g. modelling: • virtual physiological human initiative • reacting gas flows • capillary growth • colloidal dynamics • stellar systems • and many more ... the reoccurrence of stenosis, anarrowing of a blood vessel,leading to restricted blood flow
Tools for multiscale simulations • Model Couling Toolkit • Applies a message passing(MPI) style of communication between simulation models. • Oriented towardsdomain data decomposition of the simulated problem • Provides a supportfor advanced data transformations between different models • J. Larson, R. Jacob, E. Ong ”The Model Coupling Toolkit: A New Fortran90Toolkit for Building Multiphysics Parallel Coupled Models.” 2005: Int. J. HighPerf. Comp. App.,19(3), 277-292. • Astrophysical Multi-Scale Environment (AMUSE) • Scripting approach (Python) is used to couple models together., MPI used to distribute modules • Astrophysical models : stellar evolution, hydrodynamics, stellar dynamics and radiative transfer • S. Portegies Zwart, S. McMillan, at al. A Multiphysics and Multiscale Software Environment for Modeling Astrophysical Systems, New Astronomy, volume 14, issue 4, year 2009, pp. 369 - 378 • High Level Architecture components: • Application components run concurrently and communicate using HLA mechanisms • Coponents are steerable from outside during runtime using script interface • Support for synchronisation between multiscale modules - time stamps, advanced time management • K. Rycerz, M. Bubak, P. M. A. Sloot: HLA Component Based Environment For Distributed Multiscale Simulations In: T. Priol and M. Vanneschi (Eds.), From Grids to Service and Pervasive Computing, Springer, 2008, pp. 229-239
Goals • Support composition of simulation models. • scripting approach to programmatically accesssimulation components to build multi-disciplinary and multi-scale “in silico” experiments • Support execution of such experiments and achieve their reusability • Integrate solutions designed for multiscale simulations’ development with possibilities given by: • tools for multiscale simulations • environmentsfor application composition • computational e-Infrastructures
GridSpace • Experiment workbench • Constructing experiment plans from code snippets • Interactively run experiments • Experiment Execution Environment • Multiple interpreters • Access to libraries, programs and services (gems) • Access to computing infrastructure: Cluster, grid, cloud • Experience • Virolab project • PL-Grid NGI • E. Ciepiela, D. Harezlak, J. Kocot, T. Bartynski, M. Kasztelnik, P. Nowakowski, T. Gubała, M. Malawski, M. Bubak; Exploratory Programming in the Virtual Laboratory, in Proceedings of the International Multiconference on Computer Science and Information Technology pp. 621–628.
Multiscale Coupling Library and Environment (MUSCLE) • Provides a software framework to build simulations according to the complex automatatheory • Introduces concept of kernels that communicate by unidirectional pipelinesdedicated to pass a specific kind of data from/to a kernel (asynchronous communication) • J. Hegewald, M. Krafczyk, J. Tlke, A. G. Hoekstra, and B. Chopard. An agent-based coupling platform for complex automata. ICCS, volume 5102 of Lecture Notes in Computer Science, pages 227233. Springer, 2008. # CxA configuration of sample application # configure cxa properties cxa = Cxa.LAST cxa.env["max_timesteps"] = 2 cxa.env["cxa_path"] = File.dirname(__FILE__) # declare kernels cxa.add_kernel('w', 'examples.simplejava.Sender') cxa.add_kernel('r', 'examples.simplejava.ConsoleWriter') # configure connection scheme cs = cxa.cs cs.attach('w' => 'r') { tie('data', 'data') } Sample application Sender Module Console Module MUSCLE communication
GridSpace for MUSCLE application • Integrated environment for: • Configuring modules connections and parameters in cxa file • Visualizing modules connections • Running application on a chosen e-infrastructure • Interactive post-processing the output using various tools (e.g. MATLAB)
MUSCLE application inGridSpace GridSpace Experiment Workbench Various scripts editors General (Python, Ruby, Perl ..) Specific (Matlab, Mathematica, CxA interpreter) MUSCLE CxA Graphical Viewer - Models connections User file management -simulation output view Infrastructure access layer QCG Grid Resource Management System • GridSpace Experiment host: • Interpreters and libraries accessing PBS • User files QCG infrastructure Local DRMS (PBS) BF Module SMC Module DD Module other Modules BF Module SMC Module DD Module other Modules cluster MUSCLE communication cluster MUSCLE communication
Tool for automatic MUSCLE application distribution • Main features • Accessible from GridSpace level • Automatically distributes MUSCLE applications in GRID environment • Live stdout/stderr streaming • Based on Distributed Ruby (DRb) and PBS
Demo – Instent restenosis in GridSpace • http://www.youtube.com/watch?v=3S9-kljyXIw
Summary and Future Work • GridSpace can be used as a high level tool for setting up and running MUSCLE-based multiscale applications • We plan to extend our solution to a set of tools supporting programming and execution of multiscale applications in general • To control and test behaviour of such applications we plan to support creation of their skeletons • parametrised „empty” multiscale application of the same structure and requirements as the real one. • We plan support for various European e-infrastructures and cloud resources See: http://dice.cyfronet.pl