Download presentation
Presentation is loading. Please wait.
Published byJeffery McKinney Modified over 9 years ago
1
National Institute of Advanced Industrial Science and Technology Developing Scientific Applications Using Standard Grid Middleware Hiroshi Takemiya Grid Technology Research Center National Institute of Advanced Industrial Science and Technology
2
Examining and evaluating the effectiveness of grid middleware by gridifying “ real ” applications Computational Grid becomes feasible for running apps. Many kinds of middleware has been provided Several pioneering works succeeded in running apps. Little information on how to “ gridify ” legacy apps. How easily the application can be gridified? How efficiently the application can be executed on the grid? The information will be valuable for; application programmers + middleware providers Goal of the research Grid infrastructure Globus Toolkit, UNICORE, MPICH-G, Ninf-G … Climate simulation, Molecular Simulation, Fluid simulation, Virtual Screening, Astronomical Virtual Observatory …
3
National Institute of Advanced Industrial Science and Technology Weather Forecasting System Predicting short- to middle-term weather change Based on Barotropic S-model Proposed by Dr. Tanaka Legacy FORTRAN program Simple and precise Treating vertically averaged quantities Solving shallow water equations 2D simulation 150 sec for 100 days prediction/1 simulation Succeeded in reproducing characteristic phenomenon Distribution of jet streams Blocking phenomenon of high atmospheric pressure 1989/1/30-2/12
4
National Institute of Advanced Industrial Science and Technology Ensemble Simulation Keep high precision over long period Taking a statistical ensemble mean Introducing perturbation for each simulation Requires100 ~ 1000 sample simulations perturbation Observational data Sample simulation 2 Sample simulation N Sample simulation 1 Time evolution (Leap Frog method) Statistical result perturbation Time evolution (Leap Frog method) … 100 ~ 1000 simulations Time evolution (Leap Frog method) Gridifying the program enables quick response
5
National Institute of Advanced Industrial Science and Technology Assigning independent tasks on distributed resources Ninf-G Library at a glance Reference implementation of GridRPC Standardized at GGF Grid RPC WG Providing RPC semantics on the grid Suited for gridifying task parallel programs Providing asynchronous RPC call as well Built on top of Globus Toolkit GRAM: invocation of server programs Globus I/O, GASS: communication between C-S MDS: managing stub information GSI: authentication between C-S http://ninf.apgrid.org/ Server side Client side Client GRAM 3. invoke Executable 4. connect back Numerical Library IDL Compiler Remote Executable 1. interface request 2. interface reply fork MDS Interface Information LDIF File retrieve IDL FILE generate GSI Globus I/O GASS
6
National Institute of Advanced Industrial Science and Technology Advantages of using Ninf-G library (1) Construct grid applications easily Hiding complicated mechanism of the grid Based on familiar RPC semantics Providing support tools for programming ns_client_gen: client program compiler ns_gen: stub generator http://ninf.apgrid.org/ Server sideClient side Client GRAM 3. invoke Executable 4. connect back Server source IDL Compiler Remote Executable 1. interface request 2. interface reply invoke MDS Interface Information LDIF File retrieve IDL FILE generate GSI Globus I/O GASS Ninf-G Client Library Server stub Client ProgramServer Program main(){ for(i = 0; i < task_no; i++) grpc_call_async (dest[i], “remote_call”, args); grpc_wait_all(dest); } remote_call(){ Processing(); Return; } Requires no detailed knowledge on Grid infrastructure
7
National Institute of Advanced Industrial Science and Technology Advantages of using Ninf-G library (2) Write once, run everywhere Based on standard API Many libraries (NetSolve, DIET, OmniRPC … ) with the same API cf. MPI vs. NX library Constructed on the most popular grid middleware Robust and flexible applications can be constructed Dynamic server program invocation Recovering failures in establishing connections, allocating tasks
8
National Institute of Advanced Industrial Science and Technology Gridifying the Weather Forecasting System Gridifying 2 parts of the program Simulation part Visualization part Executed in a pipelined fashion Accessing through the GridLib portal Reading Data Averaging results Solving Equations S-model Program Ninf-g Solving Equations Visualizing Results Grid Lib user Ninf-g
9
National Institute of Advanced Industrial Science and Technology Behavior of the System client server Grid Lib user Globus-job-run Gass-url-copy grpc_call GridLib Sim. Server Vis. Server
10
National Institute of Advanced Industrial Science and Technology Current Status of the System Deployed on the ApGrid Testbed Client program: cluster in AIST Server program: 10 clusters in 9 institutes Succeeded in giving a demonstration CCGrid Conference: using 110 CPU ’ s PRAGMA Workshop: using 183 CPU ’ s KU , Thailand 15 CPUs Doshisha U, Japan 16 CPUs Weather Simulation Server Program NCHC, Taiwan 16 CPUs Weather Simulation Server Program TITECH, Japan 16 CPUs Weather Simulation Server Program AIST , Japan 64 CPUs Weather Simulation Server Program Visualization Program Weather Simulation Server Program AIST , Japan 10 CPUs Weather Simulation Client Program GridLib HKU, HK 32 CPUs Weather Simulation Server Program KISTI, Korea 64 CPUs Weather Simulation Server Program APGrid Testbed TSUKUBA U, Japan 16 CPUs Weather Simulation Server Program Osaka U, Japan 156 CPUs Weather Simulation Server Program TITECH, Japan 16 CPUs Weather Simulation Server Program
11
National Institute of Advanced Industrial Science and Technology Lessons Learned (1) How easily the application could be gridified? Gridifying the app using Ninf-G was very easy! 13 days work, 300 lines modification Most of the program modification can be performed on a single computer. Replacing a local call to remote one is straightforward. Creating Server program is automated. 1.Specifying the interface of a server function. 2.Eliminating data dependence between C-S. 3.Inserting Ninf-G functions into the client program. 4.Creating server stubs 10 days work On a single computer On a grid environment 3 days work
12
National Institute of Advanced Industrial Science and Technology Lessons Learned (2) How was the performance of the application? Attaining good performance is difficult Initialization/termination cost are large Modification of application, as well as middleware is needed Large look-up cost of MDS Long polling period of GRAM Blocking of Ninf-G initialization/termination function 0200400600800100012001400 elapsed time (sec) Termination Initialization AIST KISTI DU
13
National Institute of Advanced Industrial Science and Technology Performance Result of Executing 200 Sample Simulations Executing an optimized program Bypassing MDS lookup Modifying GRAM source to reducing polling period Multi-threading application to avoid blocking … 0200400600800100012001400 elapsed time (sec) AIST KISTI DU
14
National Institute of Advanced Industrial Science and Technology Future Work Middleware level Improving Ninf-G based on knowledge gained through the work Ninf-G2 will be released in Nov. 2003 Designing task farming API on Ninf-G difficult to implement efficient, robust, flexible apps Hiding scheduling, error recovery, multi-threading mechanisms Application level Checking the scalability of middleware/apps. Using more than 500 CPUs
15
National Institute of Advanced Industrial Science and Technology
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.