Presentation is loading. Please wait.

Presentation is loading. Please wait.

Problem Solving Environements WebPDELab Online Problem Solving Environment for Partial Differential Equations Applications: a Web Server for the PELLPACK.

Similar presentations


Presentation on theme: "Problem Solving Environements WebPDELab Online Problem Solving Environment for Partial Differential Equations Applications: a Web Server for the PELLPACK."— Presentation transcript:

1 Problem Solving Environements WebPDELab Online Problem Solving Environment for Partial Differential Equations Applications: a Web Server for the PELLPACK PSE GasTurbnLab Multidisciplinary Agent-based Problem Solving Environment for the Distributed Network Simulation of Gas Turbine Engines

2 PELLPACK A Problem Solving Environment for PDE Applications Sophisticated, comprehensive system for modeling physical objects described by Partial Differential Equations Used by hundreds of students and faculty at Purdue University, nationally and internationally over the past decade Applications include physics, liquid crystal droplets, proton flux propagation, thermal field analysis, fluid dynamics, semiconductors, geophysical research, electromagnetic field analysis, thermo-elasticity, structural analysis, and many other scientific and engineering areas

3 PELLPACK The Layered Structure

4 PELLPACK The Complexity of System Installation X-Windows & OSF/Motif libraries, Fortran/C compilers, Tcl/Tk, PERL, f2c variousSystem Software Maxima,Cadsol,Fidisol, Vecfem,Linpack,Pdecol, Nsc2ke, Pdeone,Nspcg, Sparskit, Geompack, Qmg, mpi, pvm ~1.5 million C, C++, Fortran, Lisp, Mac Public Domain & Copyrighted Software Language processing, PELLPACK solvers, “foreign” interfaces sequential: 3MB parallel : 8MB 255,000Fortran, C, custom parser Infrastructure & Numerical Libraries programs for building, executing & visualizing PDE problems non-static: 6.3MB static: 22.3MB 172,000C, C++, Tcl/Tk, Mac, Flex, Bison Graphical User Interface DescriptionSize Lines of Code Programming Languages PELLPACK Component

5 WebPDELab Online PELLPACK Problem Solving Environment Complete Internet-based support for sequential & parallel PDE computing from any Java-enabled browser Backed by 16 CPU Intel cluster connected through an Intel Express510t switch with Intel Ether Express Pro 100NICs at 100MB Users define, solve and analyze PDE problems supported by an interactive GUI for problem definition & visualization, with full access to the PELLPACK libraries of PDE solvers Implemented using VNC remote display for the PELLPACK X- windows programs compiled on an i86pc SunOS 5.6 machine

6

7 WebPDELab Usage Statistics for Server Access

8 WebPDELab Implementation of an Online PDE PSE PELLPACK PELLPACK Security Wrapper VNC Server WebPDELab Manager WebPDELab - VNC interface USER VNC viewer Java enabled browser HTTP CGI Two 16 CPU i86pc Clusters Server Security Wrapper

9 WebPDELab The Network Scenario Start with user PDE Problem Upload: geometry data Interactively: define & solve problem Download: solution & graphics files User’s Web Browser data file handler on server machine PDELab GUI sequential & parallel computing across the grid File Download VNC server WebPDELab server Intel cluster for sequential and parallel program execution secure cross-network File Upload

10 Gas Turbine Engine Simulation

11 GasTurbnLab Multi-disciplinary Problem Solving Environment Geometric decomposition of target simulation object defines a network of PDE problems Specialized PDE solvers (legacy code) model the physics on each geometric domain Domain interfaces are handled by mediators Goal: generalize framework & templates for an agent- based distributed network implementation of an MPSE

12 GasTurbnLab The Network Scenario Region Registry ControlAgent : socket://128.10.8.55:7020/Agency1 LegacyAgent : socket://128.10.8.55:7020/Agency2 MediatorAgent: socket://128.10.8.55:7020/Agency3 … Region ControlAgent at Agency1 LegacyAgent at Agency8 LegacyAgent at Agency2 MediatorAgent at Agency3 Agencies distributed across the Computational Grid Mobile FileAgent Mediated Data Object Mobile FileAgent Mediated Data Object Mediated Data Object Cross-network

13 GasTurbnLab The Agent-based Infrastructure Grasshopper Platform ModelingAgent Simulation ControlAgent LegacyAgent MediatorAgent LegacyAgent VisualizerAgent Iris Explorer Platform ResourceAgentDatabaseAgent Graphical User Interface Computational Agents Service Agents

14 GasTurbnLab Prototype Results from the VisualizerAgent

15 GasTurbnLab Framework for Implementing the LegacyAgent Java data object to/from network simulation controller C data Java Agent Wrapper C Wrapper Fortran Legacy Code Fortran --- C I/O Transfer across JNI interface Fortran-C data transfer for mediated data Java-C data transfer for mediated data

16 GasTurbnLab Template for the Java Agent Wrapper // TEMPLATE: Java Agent Wrapper for C-wrapped Legacy Code public class LegacyAgent extends MobileAgent implements ILegacyAgent { int startup, ret, render; SerialData sData; // Load library containing legacy code, C wrapper, legacy-wrapper data interface static { System.loadLibrary(“LegacyWrapper”); ) public native int LegacyWrapper(int startup, int render, ); // IO iteration Java-To-C interface public SerialData requestConfirmation( int domain, SerialData sd, int Render, ) throws agentException { int startup=1; ret=1; Render=0; if (startup > 1) { copyData (sd); } // create Java data object at every IO iteration ret=LegacyWrapper(startup,Render, ); // call C wrapper dp {} while (ret==1); startup++; } public void CopyData( SerialData sd) { } // C data -> Java object }

17 GasTurbnLab C Wrapper Template for the Legacy Code // TEMPLATE: C Wrapper for Legacy Code struct {int wrapperSleep; int legacySleep; } // execution control struct { } // legacy mediator data static void CopyData(jenv, this, start, type, render) // C struct to Java object at return to agent { } // Java object to C struct on return from agent JNIEXPORT jint JNICALL Java_LegacyAgent_LegacyWrapper (JNIEnv *env, jobject this, jint startup, jint render, ) {}}} { int i, ret; thread_t thr; if (startup == 1) { if ( ret == thr_create( NULL, 0, thread, NULL, THR_DETACHED, &thr)) != 0) // start legacy thread exit(1); } else { CopyData(jenv, this JavaToC ); } // copy mediated data from Java to C control.wrapperSleep=1; control.legacySleep=0; // wrapper sleeps while legacy code executes while (control.wrapperSleep) (sleep(1)); CopyData (jenv, this, startup, CToJava, render); // copy mediated data from C to Java and return(0); // return to agent }

18 // TEMPLATE: C code for transfer of I/O data from Fortran to C extern struct {int wrapperSleep; int legacySleep; } // execution control extern struct { } // legacy mediator data /* called from inside Fortran legacy code at I/O iteration location where mediated data is needed */ void legacyDataIO ( ) { CopyFortran2C ( ); // copy Fortran data to C struct control.legacySleep=1; control.wrapperSleep=0; // wake wrapper and while (control.legacySleep) {sleep(1) } // resume at return from agent CopyC2Fortran ( ); // copy C struct to Fortran } GasTurbnLab Template for the Data Transfer: Fortran C

19 GasTurbnLab Template for Legacy Code Modifications  From a Fortran executable… The Fortran “main” is changed to a subroutine with arguments passed as parameters This subroutine is started as a “thread” from the C wrapper A call to the I/O data transfer routine is inserted into the Fortran iteration loop The Fortran code, C routine for I/O transfer, and the C wrapper are compiled together as a library & loaded into the Java agent  To a C-wrapped Legacy Code Library

20 GasTurbnLab Agents and the MPSE Simulation Completed: AleAgent for simulating rotor and stator domains, KivaAgent for simulating combustor domain & two MediatorAgents for interface data interpolation of rotor-stator and stator-combustor Completed: SCA to control total simulation process for any number and type of domains & VisualizerAgent to view intermediate and final results Verified: mediated stator-rotor simulation, mediated stator-combustor simulation


Download ppt "Problem Solving Environements WebPDELab Online Problem Solving Environment for Partial Differential Equations Applications: a Web Server for the PELLPACK."

Similar presentations


Ads by Google