430 likes | 590 Views
Conference on Applied Parallel Computing. Integration of Multidiscipline Applications in Grid-computing Environments. NGUYEN G.T., J. BLACHON, C. PLUMEJEAUD. « OPALE » PROJECT. PARA’02 , Espoo, June 16th, 2002. OPALE. • New INRIA project since January 1st, 2002. • Follow up SINUS project.
E N D
Conference on Applied Parallel Computing Integration of Multidiscipline Applications in Grid-computing Environments NGUYENG.T., J. BLACHON, C. PLUMEJEAUD « OPALE » PROJECT PARA’02, Espoo, June 16th, 2002
OPALE • New INRIA project since January 1st, 2002 • Follow up SINUS project • Located Sophia-Antipolis & Grenoble • Topics NUMERICOPTIMISATION (genetic, hybrid, …) MODELREDUCTION (hierarchic, multi-grids, …) INTEGRATION PLATFORMS Coupling, distribution, parallelism, grids, clusters, ... APPLICATIONS : aerospace, electromagnetics, …
OVERVIEW • USER POINT OF VIEW • SOFTWARE ENGINEERING POINT OF VIEW • APPLICATION DEVELOPER ’S POINT OF VIEW • THEORETICAL POINT OF VIEW • CONCLUSIONS
OVERVIEW • USER POINT OF VIEW • SOFTWARE ENGINEERING POINT OF VIEW • DEVELOPER ’S POINT OF VIEW • THEORETICAL POINT OF VIEW • CONCLUSIONS
WHERE WE ARE TODAY Bits and pieces…. • 1980 : one year CPU time • 1992 : one month « » • 1997 : four days « » • 2002 : one hour « » • ASCI White (LLNL) : 8192 IBM SP procs • ASCI Red (Sandia) : 9632 Intel procs • ASCI Blue Mountain (LANL) : 6144 SGI procs
TEST CASE WING PROFILE OPTIMISATION
TEST CASE • SHOCK-WAVE INDUCED DRAG REDUCTION • WING PROFILE OPTIMISATION (RAE2822) • Euler eqns (0,84 Mach, i = 2°) + BCGA (100 gen.) • 2D MESH : 14747 nodes, 29054 triangles • 4.5 hours CPU time (SUN Micro SPARC 5, Solaris 2.5) • 2.5 minutes CPU time (PC cluster 40 bi-procs PIII, Linux)
“CAST” INTEGRATION PLATFORM COLLABORATIVE APPLICATIONS SPECIFICATION TOOL GOALS • “DECISION” CORBA INTEGRATION PLATFORM COLLABORATIVE MULTI-DISCIPLINE OPTIMISATION • DESIGN FUTURE HPCN OPTIMISATION PLATFORMS • TEST CASES IMPLEMENTATION GENETIC & PARALLEL OPTIMISATION ALGORITHMS CODE COUPLING FOR CFD, CSM SOLVERS & OPTIMISERS
CAST DISTRIBUTED INTEGRATION PLATFORM User interface
OVERVIEW • USER POINT OF VIEW • SOFTWARE ENGINEERING POINT OF VIEW • DEVELOPER ’S POINT OF VIEW • THEORETICAL POINT OF VIEW • CONCLUSIONS
INTEGRATIONPLATFORMS What they are... • COMMON DEFINITION, CONFIGURATION, DEPLOYMENT, EXECUTION & MONITORING ENVIRONMENTS • COLLABORATIVE APPLICATIONS Distributed tasks interacting dynamically in controlled and formally provable way • CODE-COUPLING FOR HETEROGENEOUS SOFTWARE • DISTRIBUTED : LAN, WAN, HSN... • TARGET HARDWARE : NOW, COW, PC-clusters, grids, ... • TARGET APPLICATIONS : multidiscipline engineering, ...
DISTRIBUTED SIMULATION What is required... • • MULTI-DISCIPLINE PROBLEM SOLVING ENVIRONMENTS • • HIGH-PERFORMANCE & TRANSPARENT DISTRIBUTION • • USING CURRENT COMMUNICATION STANDARDS • • USING CURRENT PROGRAMMING STANDARDS • • WEB LEVEL USER INTERFACES • • OPTIMIZED LOAD BALANCING & COMMUNICATION FLOW
DESIGN ALTERNATIVES • PROBLEM REQUIREMENTS Optimize specific pbs & solutions : ReMAP • HARWARE & SOFTWARE ENVIRONMENTS System evolution & development : PARIS • EXISTING PLATFORMS Globus, Condor, NetSOLVE, Legion, …. • LEGACY APPLICATION SOFTWARE How to integrate them into new PSE ?
INRIA PROJECTS ALTERNATIVES • PROBLEM REQUIREMENTS Optimize specific pbs : ReMAP, ATHAPASCAN • HARWARE & SOFTWARE ENVIRONMENTS System development : PARIS, OASIS • OTHER EXISTING PLATFORMS Globus, Condor, NetSOLVE, Legion, …. • LEGACY & NEW APPLICATION SOFTWARE How to integrate them into new PSE ?
ADVANCES IN SOFTWARE • OBJECT-ORIENTED TECHNOLOGY PROGRAMMING : C++, JAVA, C#, ... APPLICATION MODELING : UML • VISUAL PROGRAMMING • COMPONENTS PROGRAMMING REUSABILITY MODULARITY INTEROPERABILITY
DISTRIBUTED OBJECT ARCHITECTURE • TRANSPARENT DISTRIBUTED OBJECT COMPUTING • CORBA COMPLIANT • SIMPLE SOFTWARE MODEL - COMPONENTS - CONNECTORS • COMPONENTS PLUG-IN (e.g., optimizers, solvers)
DISTRIBUTED OBJECTS ARCHITECTURE SOFTWARE COMPONENTS • COMPONENTS ENCAPSULATE CODES • COMPONENTS ARE DISTRIBUTED OBJECTS • WRAPPERS AUTOMATICALLY (?) GENERATED • DISTRIBUTED PLUG & PLAY
CAST PROTOTYPE CAST OPTIMIZERS SOLVERS Modules Modules Server Wrapper Wrapper CORBA
SOFTWARE COMPONENTS • BUSINESS COMPONENTS LEGACY SOFTWARE • OBJECT-ORIENTED COMPONENTS C++, PACKAGES, ... • DISTRIBUTED OBJECTS COMPONENTS Java RMI, EJB, CCM, ... • METACOMPUTING COMPONENTS ?
DISTRIBUTED OBJECT ARCHITECTURE SOFTWARE CONNECTORS • COMPONENTS COMMUNICATE THROUGH SOFTWARE CONNECTORS • CONNECTORS ARE SYNCHRONISATION CHANNELS • SEVERAL PROTOCOLS - SYNCHRONOUS METHOD INVOCATION - ASYNCHRONOUS EVENT BROADCAST • CONNECTORS = DATA COMMUNICATION CHANNELS
OVERVIEW • USER POINT OF VIEW • SOFTWARE ENGINEERING POINT OF VIEW • APPLICATION DEVELOPER POINT OF VIEW • THEORETICAL POINT OF VIEW • CONCLUSIONS
PARALLEL APPLICATIONS The good news…. • PARALLEL and/or DISTRIBUTED HARDWARE • // SOFTWARE LIBRARIES : MPI, PVM, SciLab //, ... • SUPPORT FOR NEW APPROACHES DOMAIN DECOMPOSITION GENETIC ALGORITHMS GAME THEORY HIERARCHIC MULTI-GRIDS • SUPPORT SEVERAL DEGREES PARALLELISM
ADVANCES IN HARDWARE The best news…. • HIGH-SPEED NETWORKS : ATM, FIBER OPTICS... Gigabits/sec networks available (2.5, 10, …) • PC & Multiprocs CLUSTERS : thousands GHz procs... • Lays the ground for GRID and METACOMPUTING GLOBUS, LEGION CONDOR, NETSOLVE
CLUSTER COMPUTING PC-cluster at INRIA Rhône-Alpes (216 Linux Pentium III procs.)
CLUSTER COMPUTING PC-cluster at INRIA Rhône-Alpes (216 Pentium III procs.)
CLUSTER COMPUTING PC-cluster at INRIA Rhône-Alpes Multi-airfoil optimization : game theory + multi-grids hierarchic algo.
CAST DISTRIBUTED INTEGRATION PLATFORM GRID computing... RENNES n CFD solvers PC cluster VTHD Gbits/s network GA optimiser CAST PC cluster PC cluster software GRENOBLE NICE July 2001...
NSD CORBA CfdSolver cfd1 IRD Algogen.idl Check for syntaxe of request CAST AlgoGen i1,i2, i3, …, in Event channell, i1, i2, i3, …. CfdSolver cfd2 CAST DISTRIBUTED INTEGRATION PLATFORM Behind the stage, again...
CfdSolver Cfd1 i1 Genetic Algorithm i1, i2 ,i3, …, in Event channel, i1, i2, i3, …, in CfdSolver Cfd2 i2 CfdSolver Cfd3 i3 Processor P0 Processor P0 Processor P0 Processor P1 Processor P1 Processor P1 Processor P2 Processor P2 Processor P2 Processor P3 Processor P3 Processor P3 THREE LEVELS of PARALLELISM Parallelized with MPI on p processors CORBA server implemented in C++ CORBA client implemented in C++ Genetic algorithm based on selection, mutation, crossover
CAST DISTRIBUTED INTEGRATION PLATFORM * Curves quasi-parallels => same speed up, whatever the place. * Join an horizontal asymptote: time = 200 s The game : load balancing,...
OVERVIEW • USER POINT OF VIEW • SOFTWARE ENGINEERING POINT OF VIEW • DEVELOPER ’S POINT OF VIEW • THEORETICAL POINT OF VIEW • CONCLUSIONS
PROCESS FORMULAE MILNER ’S SCCS PROCESS ALGEBRA END InitB InitH BCGA FUN HYBRID
OPERATORS • CHOICE • SYNCHRONIZATION • PARALLEL EXECUTION • SERIAL EXECUTION • ITERATIONS • COMPLEX EXPRESSIONS : process formulae IC simulation : several coupled models
STRONG POINTS • FORMAL SPECIFICATION SYSTEM Milner ’s SCCS algebra • STRONG THEORETICAL FOUNDATIONS Process algebra for asynchronous systems • SPECIFICATION & VERIFICATION OF COMPLEX APPS • EASY TO USE Intuitive interface : simple component model No theoretical background knowledge required Transparent distribution using CORBA
OVERVIEW • USER POINT OF VIEW • SOFTWARE ENGINEERING POINT OF VIEW • DEVELOPER ’S POINT OF VIEW • THEORETICAL POINT OF VIEW • CONCLUSIONS
TODAY ’S FUTURE • MULTIDISCIPLINE SIMULATION e.g., DIGITAL DYNAMIC AIRCRAFT • DISTRIBUTED INTEGRATION PLATFORMS CAST, JACO3, CCAT, ProACTIVE ... • GRID COMPUTING GLOBUS, LEGION, CONDOR, ...
TOMORROW’S FUTURE Behind the stage, again... • METACOMPUTING POWER SUPPLY PARADIGM APPLIED TO COMPUTING RESOURCES WORLDWIDE • « COTS » PROGRAMMING COMPONENTS OFF THE SHELF • DYNAMIC LOAD BALANCING & RESSOURCE ALLOC OBSERVE, START, SUSPEND, RESUME, STOP, MIGRATE REMOTE PROCESSES DYNAMICALLY
CONCLUSION • INTEGRATION PLATFORMS PROVIDE DEFINE, CONFIGURE, DEPLOY, EXECUTE & MONITOR COLLABORATIVE APPLICATIONS • GRID COMPUTING • FULLY CORBA COMPLIANT • ALSO ALLOWS CORBA & non-CORBA COMPONENTS • SMOOTH TRANSITION FROM EXISTING CODE-COUPLING ENVIRONMENTS • ALLOWS SEQUENTIAL & PARALLEL COMPONENTS
DOCUMENTATION • http://www.inrialpes.fr/opale • http://cast.sourceforge.net/manuel Toan.Nguyen@inrialpes.fr