Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Grid Parallel Application Framework Jeremy Villalobos PhD student Department of Computer Science University of North Carolina Charlotte.

Similar presentations


Presentation on theme: "A Grid Parallel Application Framework Jeremy Villalobos PhD student Department of Computer Science University of North Carolina Charlotte."— Presentation transcript:

1 A Grid Parallel Application Framework Jeremy Villalobos PhD student Department of Computer Science University of North Carolina Charlotte

2 Overview Parallel Applications on the Grid Latency Hiding by Redundant Processing (LHRP)‏ PGAFramework Related work Conclusion

3 Parallel Applications on the Grid Advantages Access to more resources Lower costs Future profits from Grid Economy ? Challenges IO problem Need for easy-to-use Interface Heterogeneous hardware

4 Latency Hiding by Redundant Processing Latency Hiding problem LHRP Algorithm CPU type CPU task assigned to each CPU type Versioning system Mathematical model to describe LHRP Results

5 LHRP Latency Hiding Latency Hiding by Redundantly Processing

6 LHRP Algorithm Internal: Only communicates with LAN CPUs. Border: Communicates with LAN CPUs and one Buffer CPU Buffer: Communicates with LAN Border CPU and receives data from WAN Border CPU

7 Computation and Communication Stages Internal: Computes borders Transfers borders (Non-blocking)‏ Computes core matrix Waits for transfer ACK

8 Computation and Communication Stages Border: Computes borders Transfers borders (Non- blocking)‏ Sends far border Computes core matrix Waits for transfer ACK Checks on far border transfer ACK (if it is the last iteration Wait)‏

9 Computation and Communication Stages Buffer: Computes borders Transfers borders (Non- blocking)‏ Receives far border Computes core matrix Waits for transfer ACK Checks on far border transfer ACK (if it is the last iteration Wait)‏

10 Buffer Node Versioning Algorithm

11

12

13

14

15

16

17 LHRP Algorithm Review Node types: Internal Border Buffer Far Border transfer Buffer Node Versioning system

18 Estimated Algorithm Performance G: Grid Latency I: Internal Latency B: Amount of data tuples used by the Buffer Node W: Total amount of work for all CPUs C: Amount of CPUs doing non-redundant work

19 Estimated Algorithm Performance

20

21 Experimental Result: Memory Footprint 21% increase memory use over conventional form of Latency Hiding. Causes: Extra Matrix in Buffer Node to store old column versions Extra far border buffers.

22 Experimental Results: Performance

23

24 PGAFramework Objective Design Requirements Implementation technology choices API Design API Workpool Example Other API features Synchronization option Recursive option

25 PGAFramework Objective: To create an efficient parallel application framework for the grid that allows a user programmer easy interaction with the Grid resources.

26 Design Requirements Platform independence Self Deployment Easy-to-Use Interface Provide the following services without requiring extra effort on the part of the user programmer: Load Balancing Scheduling Fault tolerance Latency/Bandwidth tolerance

27 Design GPAFramework User's Application API (Interface)‏ Load Balancing Scheduling Fault Tolerance Latency Bandwidth Tolerance Globus Job Scheduler (Condor)‏ GPAFramework User's Applications Hardware Resources

28 Deployment GridWay ? Globus CondorPBS Globus SGE Desktop PCs Node Cluster computer node Super computer Scheduling Service Job Submit Node Resource Discovery

29 Implementation Java Platform Independence JXTA (JXSE)‏ Peer-to-peer API Provides tools to work-around NAT's and firewalls Provides library and module runtime loading API

30 Motivation for API Design Video Codecs Codecs follow an interfaces What happens inside the codec does not matter The input and output for the codec needs to be specified Display a Gui Load File... Output video to screen mpegoggh.264 Video Player Mpeg endoded stream Raw video Data

31 PGAFramework API There may be multiple “template” API's Each API has Interfaces that the user implements The user “Inserts” his module into the framework API Get data from framework Compute on data Return processed data Request sync (optional)‏ Give data to framework Get data from framework Store or pipe data Schedule processes on Resource Load user Data Create network Determine topology and net behavior Send user process to compute nodes Get Data from user class Send to master node Repeat process in loop until done

32 API Sample Code

33 API

34 API Sample Code

35 Synchronization option RemoteHandler provides an Interface to synchronize data Data is synced non-blocking User creates blocking procedures if needed

36 Recursive Feature Allows multiple level of parallelization (granularity)‏ Decode Video Cut Raw Video Into Pictures Blur pictures Blur portion of picture Pipeline Work pool Synchronous

37 Related Work MPI Implementation for the Grid MPICH-G2 GridMPI MPICH-V2 (MPICH-V1)‏ Peer-to-peer parallel frameworks P2PMPI (for cluster computing)‏ P3(for cluster computing)‏ Self deploying frameworks Jojo

38 Conclusions Parallel Applications on the Grid Latency Hiding by Redundant Processing (LHRP)‏ PGAFramework Related work


Download ppt "A Grid Parallel Application Framework Jeremy Villalobos PhD student Department of Computer Science University of North Carolina Charlotte."

Similar presentations


Ads by Google