270 likes | 435 Views
“DECISION” PROJECT INTEGRATION PLATFORM. CAST. CORBA PROTOTYPE. J. BLACHON & NGUYEN G.T. INRIA Rhône-Alpes. June 10th, 1999. INTEGRATION PLATFORM. • COMMON DEFINITION, IMPLEMENTATION, CONFIGURATION & EXECUTION ENVIRONMENT. • COLLABORATIVE APPLICATIONS.
E N D
“DECISION” PROJECT INTEGRATION PLATFORM CAST CORBA PROTOTYPE J. BLACHON & NGUYEN G.T. INRIA Rhône-Alpes June 10th, 1999
INTEGRATIONPLATFORM • COMMON DEFINITION, IMPLEMENTATION, CONFIGURATION & EXECUTION ENVIRONMENT • COLLABORATIVE APPLICATIONS • CODE COUPLING FOR HETEROGENEOUS SOFTWARE • DISTRIBUTED (LAN, WAN, NOW ...) • TARGET HARDWARE : workstations, PC clusters, ... • TARGET APPLICATIONS : engineering, ...
INTEGRATIONPLATFORM PROTOTYPE ARCHITECTURE MPI SOLVER OPTIMIZER OPTIMIZER … … PVM NETWORK CORBA SYNCHRONISATION FORMATS CAST DATA NAMING
BASIC CONCEPTS COMPONENTS & LINKS • TASKS • OPERATORS • MODULES • PARAMETERS • DISTRIBUTION
TASKS • USER DEFINED (reusable) • LOGICAL UNIT : CODE INDEPENDENT • APPLICATION DEPENDENT • DEPENDENCY RELATIONSHIPS • OPERATOR INPUT PARAMETERS • HIERARCHICAL DECOMPOSITION • INTERCONNECTED SUB-TASKS • LOCAL OR REMOTE
MODULES • USER CODE • ACTUAL EXECUTION UNIT • TASK INDEPENDENT (update modules) • REMOTE OR LOCAL • TRANSPARENT USE
OPERATORS • CHOICE • SYNCHRONIZATION • PARALLEL EXECUTION • SERIAL EXECUTION • ITERATIONS • UNARY OR BINARY • COMPLEX EXPRESSIONS : process formulae
DISTRIBUTION ISSUES • TASKS • MODULES : task location • DATA : remote files or shared memory • TRANSPARENT USE
PROTOTYPE INTEGRATION PLATFORM SOFTWARE INCLUDED IN CAST • REMINDER : IPA, BCGA, RCGA (March 1998) • NEW : HBCGA, PBNCBN , ParBCGA (Sept. 1998) HBCGA II (Oct. 1998) • Test Case : CFD solver + BCGA optimiser (Aug. 1998)
TEST CASE • SHOCK-WAVE INDUCED DRAG REDUCTION • WING PROFILE OPTIMISATION (RAE2822) • Euler eqns (0,84 Mach, i = 2°) + BCGA (100 gen.) • 2D MESH : 1286 nodes, 3680 triangles • 15 hours CPU time (SUN Micro SPARC 5, Solaris 2.5)
TEST CASE WING PROFILE OPTIMISATION
EXAMPLE PARBCGA END FUN1 INIT BCGA FUN2
CORBA PROTOTYPE DEMONSTRATOR GOALS • “DECISION” CORBA INTEGRATION PLATFORM COOPERATIVE MULTI-DISCIPLINE OPTIMISATION • DESIGN FUTURE HPCN OPTIMISATION PLATFORMS • TEST CASES IMPLEMENTATION GENETIC ALGORITHMS USED FOR OPTIMISATION CODE COUPLING FOR CFD, CSM SOLVERS & OPTIMISERS
CORBA DEMONSTRATOR PLATFORM CAST SOLVERS OPTIMIZERS CORBA
DISTRIBUTED OBJECT ARCHITECTURE • TRANSPARENT DISTRIBUTED OBJECT COMPUTING • CORBA COMPLIANT • SIMPLE SOFTWARE MODEL - SOFTWARE COMPONENTS - CONNECTORS • COMPONENTS PLUG-IN (e.g., optimizers, solvers)
DISTRIBUTED OBJECT ARCHITECTURE SOFTWARE COMPONENTS • COMPONENTS ENCAPSULATE USER MODULES • COMPONENTS ARE DISTRIBUTED OBJECTS • WRAPPERS AUTOMATICALLY GENERATED ?
DISTRIBUTED OBJECT ARCHITECTURE SOFTWARE CONNECTORS • COMPONENTS COMMUNICATE THROUGH SOFTWARE CONNECTORS • CONNECTORS ARE SYNCHRONIZED CHANNELS • SEVERAL PROTOCOLS - SYNCHRONOUS METHOD INVOCATION - ASYNCHRONOUS EVENT BROADCAST • CONNECTORS = DATA COMMUNICATION CHANNELS
PROTOTYPE CORBA DEMONSTRATOR Phase 2 CAST OPTIMIZERS SOLVERS Modules Modules Server Wrapper Wrapper CORBA
PROTOTYPE CORBA DEMONSTRATOR TECHNICAL ITEMS • OPTIMISERS WRAPPING (Nimbus) • SOLVERS WRAPPING (Nokka-Tume) • CAST 2.0 IMPLEMENTATION i.e. CORBA version • TEST-CASES IMPLEMENTATION • LOCAL TEST-CASES CROSS-VALIDATION • DISTRIBUTED TEST-CASES CROSS-VALIDATION
PROTOTYPE CORBA DEMONSTRATOR CAST TASKS CAST OPTIMIZERS SOLVERS Server Wrapper Wrapper CORBA
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 : single task model No theoretical background knowledge required Transparent distribution using CORBA
STRONG POINTS • NO USER CODE MODIFICATION REQUIRED • PROPRIETARY CODE: NO MARKETING CONSTRAINTS • EASILY MODIFIABLE: NO STRINGENT LEGACY CODE • OBJECT-ORIENTED IMPLEMENTATION
STRONG POINTS • OPEN & DISTRIBUTED SOFTWARE ARCHITECTURE EASY DEVELOPMENT & EVOLUTION • CLEAR TRANSITION TO O.O. FRAMEWORKS • OPENESS : APPLICATION, SYSTEM, FUNCTIONAL ISSUES • CLIENT / SERVER ARCHITECTURE • NO MONOLITHIC ENVIRONMENT
CONCLUSION • CAST PROVIDES AN INTEGRATION PLATFORM DEFINE, IMPLEMENT, CONFIGURE & EXECUTE COLLABORATIVE APPLICATIONS • FORMAL ALGEBRAIC PROCESS SPECIFICATIONS • FULLY CORBA COMPLIANT PLATFORM • MIXING CORBA & non-CORBA CODES • SMOOTH TRANSITION FROM EXISTING CODE-COUPLING ENVIRONMENTS
FUTURE DIRECTIONS • FORMAL PROCESS VERIFICATION • INTERFACE WITH PARALLEL CODES COUPLING CORBA & MPI, PVM • GENERIC CORBA WRAPPERS AUTOMATE GENERATION OF CODE WRAPPERS