Download presentation
Presentation is loading. Please wait.
Published byMarjorie Thomas Modified over 9 years ago
1
Service-enabling Legacy Applications for the GENIE Project Sofia Panagiotidi, Jeremy Cohen, John Darlington, Marko Krznarić and Eleftheria Katsiri
2
1 Motivation Engineer GENIE to inform research on component coupling frameworks: Analysis of a complicated piece of code such as GENIE Extraction of interface and model coupling semantics Modern component architectures indicate the need for highly engineered and autonomous components Create methodology to advance the quality of functional code
3
Goals A flexible coupling framework where components can be individually developed and coupled together The coupling needs to be correct, intelligent and without undue programming effort Come up with sophisticated ways to couple physical entities in order to optimally produce experimental results A system of the size and complexity of GENIE requires a supporting semantic framework 2
4
Previous Work Separation of the code into pieces - Layered representation of the application Wrapping GENIE as ICENI binary component Delivery of Web-based System (portal) to allow a virtual organisation of environmental scientists to create and manage simulations at a high-level over a Condor pool Implementation of database management system to allow scientists to share, access and visualise data produced by simulation runs Investigation of model-coupling and validation semantics 3
5
4 GENIE model framework 3D atmosphere 3D ocean 2D sea ice Atmospheric CO 2 2D land surface Land biogeochemistry Ocean biogeochemisty Ocean sediments 3D ice sheets
6
Currently in GENIE genie.F is a glorified metafile containing if-then-else statements Fortran routines act as “wrappers” Life cycle phases scattered Module communication through shared memory Hard-coded semantics (e.g. grid interpolations, time steps) 5
7
6 Extended Abstract Component (Grid) Model for GENIE Model Specific Interfaces Abstract Interface - Plugin adapters Web Service Wrapper Layer Communication through SOAP/MPI Metadata for Composability
8
7 Componentising GENIE Determining I/Os SIDL (Scientific Interface Description Language) - Common way of describing components Linking Fortran to Java Babel Interoperability Tool Shared Libraries
9
8 Babel Interoperability Tool
10
9 Steps to Service Enable GENIE (1/4) 1. Wrap and test modules individually 2. Test module communication through an equivalent to genie.F Java client & compare results 3. Create Abstract Component Interfaces
11
Steps to Service Enable GENIE (2/4) 4. Launch components as Web Services and modify Java client to now call Web Services instead 10
12
11 Steps to Service Enable GENIE (3/4) 5.Use workflow engine to orchestrate the Abstract Components
13
12 Steps to Service Enable GENIE (4/4) 6. Advance into a Grid environment so as to incorporate Co-ordination Specification, Dynamic Abstract Generator, Resource Allocation and Optimisation
14
13 An example as proof of concept
15
Achieved.. Web Service Client Embm Atmosphere Surflux Goldstein SeaiceLand Goldstein Ocean 14 Land Bean Embm Bean GoldSeaice Bean Goldstein Bean Surflux Bean
16
15 Conclusions Provided service-based computational Grid execution architecture for GENIE framework Scaled engineering steps Proved that functional legacy code can be distributed and run as Web Services
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.