The Ibis Project: Simplifying Grid Programming & Deployment Henri Bal, Jason Maassen, Rob van Nieuwpoort, Thilo Kielmann, Niels Drost, Ceriel Jacobs, Frank Seinstra, Roelof Kemp, Kees Verstoep Vrije Universiteit Amsterdam
The ‘Promise of the Grid’ Efficient and transparent (i.e. easy-to-use) wall-socket computing over a distributed set of resources [Sunderam ICCS’2004, based on Foster/Kesselman]
● Performance & scalability ● Heterogeneous ● Low-level & changing programming interfaces ● writing & deploying grid applications is hard Reality: ‘Problems of the Grid’ ● Connectivity issues ● Fault tolerance ● Malleability Wide-Area Grid SystemsUser !
The Ibis Project ● Goal: ● drastically simplify grid programming/deployment ● ``Grids as promised’’
Approach ● Minimal assumptions about execution environment ● Virtual Machines (Java) deal with heterogeneity ● Use middleware-independent APIs ● Different programming abstractions ● Designed for dynamic/hostile grid environments ● Modular and flexible: can replace Ibis components by external ones
Global picture
Grid programming ● Programming models: ● Message passing (RMI, MPJ) ● Divide-and-conquer (Satin) ● IPL (Ibis Portability Layer) ● Java-centric “run-anywhere” library, sent with application ● Can handle fault-tolerance, malleability ● SmartSockets ● Solve connectivity problems automatically (firewalls, NAT, addressing problems)
Grid deployment ● JavaGAT: Java Grid Application Toolkit ● Make applications independent of underlying grid ● Used for file copying, resource discovery, job submission & monitoring, user authentication ● API is currently standardized (SAGA) ● Zorilla P2P system ● Job management, gossiping, clustering, flood scheduling
Ibis applications ● e-Science (VL-e) ● Brain MEG-imaging ● Mass spectroscopy ● Multimedia content analysis ● Video processing ● Many HPC applications ● SAT-solver, N-body, grammar learning, ….
European users ● D-Grid: Workflow engine for astronomy ● U. Erlangen: grid file system ● INRIA: ProActive on Ibis RMI ● U. Patras: Jylab scientific computing ● UPC Barcelona: Grid Superscalar ● HITACHI: Peta-scale data management Grid’5000
DAS-3DAS nodes (AMD Opterons) 792 cores 1TB memory LAN: Myrinet 10G Gigabit Ethernet WAN (StarPlane): Gb/s OPN See CCGrid’08 session 11 (Verstoep)
Gene sequence comparison in Satin (on DAS-3) Speedup on 1 cluster Run times on 5 clusters 78% efficiency on 5 clusters (with 1462 WAN-msgs/sec)
Multimedia content analysis ● Analyzes video streams to recognize objects ● Extract feature vectors from images ● Describe properties (color, shape) ● Data-parallel task ● Compute on consecutive images ● Task-parallelism on a grid See CCGrid’08 SCALE challenge & sessions 12+16
High Resolution Video Processing ● Realtime processing of CineGrid movie data ● 3840x fps = 1424 MB/sec ● Multi-cluster processing pipeline ● Using DAS-3, StarPlane and Ibis
Summary ● Goal: Simplify grid programming/deployment ● Key ideas in Ibis ● Virtual machines (JVM) deal with heterogeneity ● High-level programming abstractions (Satin) ● Handle fault-tolerance, malleability, connectivity problems automatically (Satin, SmartSockets) ● Middleware-independent APIs (JavaGAT) ● Modular
Future work? ● Clouds as promised (CCGrid’09 Shanghai) ● Exaflop as promised (CCGrid’10 Melbourne) ● Cold fusion as promised ● Stock market prediction as promised ● Indiana Jones 5 as promised (2032?)
More information ● Ibis can be downloaded from ● ● Papers: ● Satin [PPoPP’07], SmartSockets [HPDC’07], Gossiping [HPDC’07], JavaGAT [SC’07], MMCA [IEEE Multimedia’07, CCGrid’08], DAS-3/StarPlane [CCGrid’08] Ibis tutorials CCGrid’08