1 / 14

Grid Computing Research at QUT

Grid Computing Research at QUT. Dr Wayne Kelly Centre for Information Technology Innovation Queensland University of Technology, Australia. This work was supported by Microsoft Research. G2: Gardens Mark II. A variety of versions being developed: various programming models.

ezhno
Download Presentation

Grid Computing Research at QUT

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 Computing Research at QUT Dr Wayne Kelly Centre for Information Technology Innovation Queensland University of Technology, Australia This work was supported by Microsoft Research

  2. G2: Gardens Mark II • A variety of versions being developed: • various programming models. • various architectures. • Common properties: • Cycle stealing; volunteers may leave without notice. • Isolates programmer from changing set of volunteers. • Automatic fault tolerance. • Simple and familiar parallel programming models. • Implemented on the Microsoft .NET platform. • BYO code model; dynamic deployment ... OzGrid-01

  3. A True Computation Grid(not a virtual supercomputer) High Performance Computer Stations Work from comfort of home The Middleware Generic Interface Can plug in any standard (240V) appliance! OzGrid-01

  4. Programming Models provides a computational service remote machine • Remote “Procedure” Call(no persistent remote state) • Remote Method Call(persistent remote state) procedure call client parameters results remote machine object object method call object parameters Machine A Machine C results object object object OzGrid-01 Machine B

  5. Remote “Procedure” Call Model • Programming model identical to ASP.NET web services. SOAP: XML encoded RPC over HTTP Client-side proxy Server-side agent Client Program class Hello { public static void Main() { MSProxy p = new MSProxy(); Console.Write(p.Mult(1,2)); } } Web Service Program public class MS { [WebMethod] public int Mult(int a, int b) { return a * b; } } OzGrid-01

  6. Asynchronous Web Methods Asynchronous calling: proxy = new MyProxy(); IAsyncResult a = proxy.BeginFoo(arg1,..,argn, new AsyncCallback(Bar), mystate); ... a.WaitHandle.WaitOne(); void Bar(IAsyncResult ar) { MyResultType result = proxy.EndFoo(ar); ... } Synchronous implementation: [WebMethod] public MyResultType Foo(arg1,..,argn) { ... return actualResult; } or Asynchronous implementation: [WebMethod] public IAsyncResult BeginFoo(arg1,..,argn) { ... } public MyResultType EndFoo(IAsyncResult ar) { ... }

  7. Remote “Method” Call Model • Programming model is standard .NET Remoting • the .NET equivalent of Java RMI • More extensible than java RMI • CLR support means no need to statically generate proxies. • Supports client activated and well known remote objects. RemotingConfiguration.Configure("MyApp.exe.config"); MyRemoteType remoteObj = new MyRemoteType(arg1,..,argp); MyDelegate d = new MyDelegate(MyObject.MyMethod); IAsyncResult a = d.BeginInvoke(arg1,..,argn, new AsyncCallback(Bar), d); ... a.WaitHandle.WaitOne(); void Bar(IAsyncResult ar) { MyResultType r = ((MyDelegate)ar.AsyncState).EndInvoke(out arg1,..,argm, ar); ... } <configuration> ... <client url="g2://remotehost.com"> <activatedtype="MyRemoteType, MyAssembly" /> </client> </configuration>

  8. Architectures • Central server • Pure peer-to-peer • Hybrid OzGrid-01

  9. Central Server Architecture Volunteers Server Client • Roles of the central server • Discovery • Fault tolerance • Communication bridge (for worst case) • Clients push jobs and pull results* • Volunteers pull jobs and push results job repository possible firewall possible firewall OzGrid-01

  10. Hybrid Architecture Volunteers Server Client job repository • Senses its environment • Adaptively utilizes available resources to maximize efficiency • allows peer to peer communication where possible job repository OzGrid-01

  11. Pure Peer-to-PeerArchitecture • Maximum communication efficiency and scalability. • Assumes direct peer-to-peer communication is possible. • No single point of failure • Application state is completely distributed. • Challenge is restoring state when a node leaves unexpectedly. • Difficult to know where objects are given changing node set. • uses virtual addresses Client OzGrid-01

  12. Systems Currently Under Development Remote “Procedure" Call Remote Method Call Central Server Hybrid Peer-to-Peer OzGrid-01

  13. G2 Home Page and Demos http://g2.fit.qut.edu.au/ OzGrid-01

  14. Open Grid Services Architecture (OGSA) • New web service based standard for Grid computing. • Globus toolkit 3.0 based on OGSA. • alpha release January 2003 • beta release April 2003 • Possible OGSA Research at QUT: • Looking to create an Australian computational Biology Grid utilizing GrangeNet in partnership with other Universities. • Adding OGSA interfaces to G2. • Extending OGSA with ideas from G2. • Implementing OGSA support for .NET OzGrid-01

More Related