260 likes | 398 Views
International Parallel and Distributed Processing Symposium 2007. Speaker: Xin Zuo Heterogeneous Computing Laboratory (HCL) School of Computer Science and Informatics University College Dublin Ireland.
E N D
International Parallel and Distributed Processing Symposium 2007 Speaker: Xin Zuo Heterogeneous Computing Laboratory (HCL) School of Computer Science and Informatics University College Dublin Ireland HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Fourth High-Performance Grid Computing Workshop Experiments with a Software Component Enabling NetSolve with Direct Communications In a Non-Intrusive and Incremental Way Authors: Xin Zuo, Alexey Lastovetsky HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Outlines • An overview of approach • Enabling NetSolve with direct communication • Design and Implementation of software component • Application and Experiments • Conclusions and further work HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Overview of Approach • About High performance Grid programming • - It has reached a certain level of maturity, examples: NetSolve and Ninf • -Need further development in terms of functionality and quality. • - Particularly, addition of a new feature to a Grid programming system. • - Traditionally, achieved by changing the code of the system. • - It has twoserious disadvantages: • 1. May introduce bugs which cause system run instable or even crash. • 2. To replace the old version, can have very high organizational overhead • and sometimes be simply unrealistic on the Grid. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Overview of Approach • The Features of Approach: • Non-intrusiveness: The original system does not change and the new features are provided by a supplementary software component working on the top of the system. • Increment: The supplementary software component does not have to be installed on all computers to enable applications with the new features. • To demonstrate the feasibility of approach • - We choose NetSolve • - One particular feature: Direct Communication between remote tasks • - Real world Application and Experiments HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Enabling NetSolve with direct communication • NetSolve is positioned as a programming system for high performance distributed computing on global networks based on GridRPC. • - http://icl.cs.utk.edu/netsolve/ • -NetSolve (GridSolve),is a client-server system that enables users to solve complex scientific problems remotely • Unnecessary bridge communications: In NetSolve, output data of remote tasks are typically sent back to the client upon completion of each remote task even if the data are only needed as input for some other remote tasks. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Enabling NetSolve with direct communication • Enabling direct communication HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Design and Implementation of software component • Consists of three parts • - Client API &Argument Parser: Provide a uniform interface for the client to make remote procedure calls. Despite the modification on the remote side, the wrapper API allows the calls to be made in the same manner. The only difference is in the arguments that can be not only variables storing real data but also handlers. • - Server Connector: responsible for interacting with clients and other Server Connectors to enable direct communications. • - Job Name Service (JNS): responsible for registration of procedure upon its invocation during RPC call. Other procedures may send requests to the JNS to search for registered procedure. JNS is set up on the client side automatically. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Design and Implementation of software component • Using software component in NetSolve • - Client programmers: They need to install our wrapper API and Job Name Service on the client side, then compile the client program with the wrapper library. The principle is quite easy: the programmer just replaces the input/output arguments with handlers as the input/output data. Example: • errno=netsl("A", inputA, outputA); • errno=netsl("B", outputA, inputB, outputB); • The extended API codes are as follows: • errno=mynetsl("A", inputA, hdlA); • errno=mynetsl("B", hdlA, inputB, outputB); HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Design and Implementation of software component - Procedure developers: The procedure programmers should do nothing to enable direct communications. They develop their own procedures as usual. - Server administrator: need to install Server Connector on server-side. No re-installation and re-compilation of either NetSolve itself or registered NetSolve procedures are needed. User Guidance and Software Component on site: http://hcl.ucd.ie HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Design and Implementation of software component • Architecture of the supplementary software component enabling direct communications in NetSolve HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Application and Experiments • Three typical scientific NetSolve: • - protein tertiary structure prediction • - image processing using sequential algorithms • - matrix chain product. • These three applications have different communication structures. • Experiment environment:Experiments are conducted using six NetSolve servers, interconnected via a 100 Mbit Ethernet network with a switch enabling parallel communications In School of Computer Science and Informatics, University College Dublin. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Application and Experiments • Genetic Crossover in Protein Tertiary Structure Prediction System - It is mainly performed by the protein energy minimization. - Parallel Simulated Annealing using Genetic Crossover is a minimization engine.NetSolve is a basic tool to use it. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Application and Experiments (a) bridge communication (b) direct communication - Bridge communications exist and they can be eliminated by using our software component. - By doing so, Genetic Crossovers are executed between servers directly. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Application and Experiments • Bridge communication time (in seconds); D – Direct communication time (in seconds). • Experimental results shows that the average communication speedup due to • elimination of bridge communications is around 43%. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Application and Experiments • Image processing using sequential algorithms - Image processing implements a wide range of operations such as smoothing, sharpening, noise reduction, etc. - Our research aims to optimize communications of data transaction for sequential multimedia operations.In this paper,Linear Combination Filteringis the example. - NetSolve is a basic tool and functions are taken from Image Processing Library. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Application and Experiments (a) (b) (c) (d) (e) (f) Input image; (b) Laplacian of (a); (c) Spatially invariant high-pass filtering [sum of (a) and (b)]; (d) Mask image [Sobel gradient of (a) smoothed by a 5x5 box filter]; (e) Product of (b) and (d); (f) Space-variant enhancement [sum of (a) and (e)]. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Application and Experiments Figure. Enabling direct communications between NetSolve servers while performing linear combination filtering. - Bridge communications exist. Use our software component to eliminate un-necessary communications between the client and the servers; we select two servers to perform linear combination filtering functions in parallel. - By doing so, 6 bridges are removed among 11 communications. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Application and Experiments • Bridge communication time (in seconds); D – Direct communication time (in seconds). • Experimental results shows that the average communication speedup due to • elimination of bridge communications is around 50%. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Application and Experiments • Matrix chain product problem in general scientific computations - Given N matrices A1, A2, …, An of size N x N, the matrix chain product problem is to compute A1x A2x … x An. Itis an important computational kernel that is used in computing the characteristic polynomial, determinant, rank, etc. - One popular solution: Standard binary tree method. Example: n = 8. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Application and Experiments (a) bridge communication (b) direct communication - By using our software component, bridge communications can be removed between NetSolve servers. Figures above depict how it works. - Communication links are reduced from 14 to 8. Only the result matrix A12345678 is returned to the client. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Application and Experiments • Bridge communication time (in seconds); D – Direct communication time (in seconds). • Experimental results shows that the average communication speedup due to • elimination of bridge communications is around 35%. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Application and Experiments • Other Experiments ‘o’ – the matrix chain product; ‘.’ – Genetic crossover; ‘*’ – Image processing using sequential algorithms. - Speedup for the three applications increases linearly with the increase of the number of computing servers with direct communication enabled from 0 to six. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Application and Experiments ‘*’ – homogeneous network; ‘o’ – heterogeneous network. - Speedups for the matrix chain product in both homogeneous network and heterogeneous network. It shows that much higher speedup can be achieved in heterogeneous communication networks. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
Conclusions and Further work • Conclusions: • - we have presented the implementation of a software component enabling direct communications in NetSolve in a non-intrusive and incremental way. We have also presented the results of experiments with three typical real-world applications having different communication structures. • - The experimental results have shown that the performance of NetSolve applications can be significantly and easily improved by using our software component. • Further work: • - Future work is about to test this software component in a larger Grid environment such as Grid Ireland or Grid 5000 in France. HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007
The END • http://www.cs.ucd.ie • http://hcl.ucd.ie • Thank you! HCL Group http://hcl.ucd.ie Fourth High-Performance Grid Computing Workshop– IPDPS 2007