1 / 27

GRID applications control based on synchronizers

GRID applications control based on synchronizers. D. Kopanski * , J. Borkowski * , M. Tudruj * x * Polish-Japanese Institute of Information Technology, 86 Koszykowa Str., 02-008 Warsaw, Poland x Institute of Computer Science, Polish Academy of Sciences 21 Ordona Str. 01-237 Warsaw, Poland

efuru
Download Presentation

GRID applications control based on synchronizers

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. GRID applications control based on synchronizers D. Kopanski*, J. Borkowski*, M. Tudruj* x *Polish-Japanese Institute of InformationTechnology, 86 Koszykowa Str., 02-008 Warsaw, Poland xInstitute of Computer Science, Polish Academy of Sciences 21 Ordona Str. 01-237 Warsaw, Poland {janb, damian, tudruj}@pjwstk.edu.pl

  2. Contents • Introduction • The principles of application control • Implementation issues • Conclusions

  3. Introduction • Monitoring global states • Strongly Consistent Global States (SCGS) • Observed Global States (OGS) • Activation and cancellation • P-GRADE system • PS-GRADE system

  4. Monitoring global states control Processes can communicate with a number of Synchronizers. Synchronizers learn state information from processes and send back control information. S a synchronizers processes state information P1 qArrows represent reliable, asynchronouscommunication channels P3 P2 P4 S b

  5. Monitoring consistent global states • There is no global clock, no shared memory • Synchronizer must be able to order properly incoming events to build Strongly Consistent Global States (SCGS) • SCGS is a combination of process local states, one state from each process, such that the local states are pairwise concurrent. E.g. <s1,t1> is a SCGS, <s1,t2> is not. s1 e1 e2 P1 t1 t2 P2 f1 f2 m2 m1 sync

  6. Strongly Consistent Global States • Events must have timestamps to be able to order messages correctly. Logical vector clocks or real time intervals based on roughly synchronized local clockscan be used • If process local clocks are synchronized with a known accuracy, then real time interval timestamps can be used to identify SCGS

  7. Observed states e1 e2 P1 P2 f1 f2 sync - f1 e1 f1 e1 f2 e2 f2 • We don’t need a clock synchronization • We don’t need QoS (Quality Of Service) • The reaction is fired immediately

  8. Computation activation and cancellation caused by predicate evaluation

  9. GRADE system • A complete graphical programming environment for developing message passing applications designed at Parallel and Distributed Systems Laboratory of the SZTAKI Institute of Hungarian Academy of Sciences • Application level specifies processes • andtheir interconnections • Process level defines control flow diagram of a process • Text level is used to enter sequential C code into elements of a flow diagram

  10. GRADE extension – state information acquisition local state info transfer channels signal transfer channels standard message passing channels

  11. GRADE extension - synchronizer

  12. GRADE extension – synchronizerCondition Window

  13. GRADE extension – synchronizercontrol flow window reception of state variables condition send signal

  14. GRADE extension – Process -control flow window Start signal - sensitive region "watching - signal" Start signal - insensitive region Resume interrupted computations Send state Cancel computations End signal - insensitive region End signal - sensitive region "endwatching - signal"

  15. GRADE extension – synchronizer hierarchy

  16. The principles of application control • Control of GRID application by: • Data control flow (similarly to P-GRADE Workflow implemented by SZTAKI) , based on input and output files for cluster application • GRID Synchronizer : • Collects information (vector of state) about application state • Detects SCGS or OGS • Computes conditions • Sends signals to the application

  17. A GRID-level synchronizer inserted into a workflow graph Synch1 3 4 3 3 2 1 2 2 5 6 2 2 A1 1 1 1 A2 A3 4 5 4 5 1 3 1 A4 A5 3 4 1 A6

  18. A GRID-level synchronizer and an application (example) Application A2 GRID Synchronizer Application A3 Application A5 Application A4

  19. Implementation concepts • We use the Globus Toolkit v3 (GT3) to implement web service infrastructure • User Defined Service layer will be used for signal and message delivery = Grade-Globus-Web-Service (GGWS) and for the application maintenance service on the GRID= Grade-Globus-Maintenance-Service (GGMS) • Inter-grid communication • with SOAP protocol • We also use : • GridFTPservicesfor input, • output files and program • code transfer • GRAM serviced for local • job managment GT3 core architecture and PS-GRADE service

  20. Grade-Globus-Maintenance-Service • GGMS will be the central maintenance service of GRID-Grade application. • Main function of GGMS : • Checks the start conditions for applications and if they are true, initiates execution of application • Makes the ”GRID execution map” with information about current running applications and sends it to the GGSW (if GGSW need it) • Makes the global (model) clock available to all GGSW • GGCSW use : • GridFTPservicesfor input, output files and program code transfer • GRAM services for job managment • SOAP for communication with GGSW

  21. GGMS – model of execution • Start = execute GGCSW on selected GLOBUS Server • LOAD Data = All executions, input files , execution Map to the selected GLOBUS Server with the use of GridFTP • Starts the Global Synchronizers • Main LOOP - Until all applications complete • Checks all starting conditions • If any fulfilled then • Run the ready Grid applications • Updates the GRID execution map • Sends the execution map to the GGSW (if GGSW need it) • Checks the state of all running application • If any application completes then • Gets the output files • Updates the GRID execution map • Sends the execution map to the GGSW • Maintains the time synchronisation of all running GGSW • Stops the Global Synchronizers • Waits for output data request

  22. GGMS – an application starting pattern • Makes a new instance of GGSW on selected GLOBUS server • Sends the execution file and input file to the GLOBUS server throught GridFtp service • Executes program by the use of the relevant GRAM service in interactive mode or in the batch mode • Creates then communication interface between the GGSW and the started application

  23. Globus Resource Allocation Manager – GRAM service • GRAM simplifies the use of remote systems by providing a single standard interface for requesting and using remote system resources for the execution of jobs. • The most common use of GRAM is remote job submission and control. • Grid Service Factory Pattern • Create Service • Service instance is created • The request is validated • User’s job request is *ready* to be started • Start operation • User’s job request is started • Service instance monitors job request • Updates request SDE (Service Data Element) • Job control • Ensures client received a handle to the job before resources have been consumed GGMS and GRAM

  24. The clock synchronisation • If an application uses the Strongly Consistent Global States we have to implement a clock synchronisation mechanism • We will use the GGMS’s clock as a reference clock • After clock synchronisation call, all the GGWSs measure the difference between their local clocks and the referenced clock • When the local synchronizer sends a state message to the global synchronizer, GGWS does the timestamp correction by adding to the timestamp the value of time difference versus the reference clock.

  25. Grade-Globus-Web-Service(GGWS) • Main functions of GGSW • Implements communication between local synchronizers and the global synchronizer (with SOAP Messaging) • Corrects timestamps attached to state messages(in the SCGS mode) • Maintains the GRID CENTER time-synchronisation process • Monitors running application

  26. Inter GRID Communication concepts

  27. Conclusions The paper has presented how the synchronization-based parallel application control can be extended and ported onto the GRID level. With the use of the proposed method we can create an advanced control of many applications running in the GRID environment. Inter–application coordination between programs, which are executed on different GRID sites, is supported. We have employed the Globus Toolkit as the required middleware implementation platform. Full implementation of the described extension of the PS-GRADE system will be done in co-operation with P-GRADE authors i.e. SZTAKI Institute of Hungarian Academy of Sciences

More Related