pascal felber raluca halalai lorenzo leonini etienne rivi
play

!"#$% Pascal Felber, Raluca Halalai, Lorenzo Leonini, Etienne - PowerPoint PPT Presentation

On The Integration Of !"#$% Pascal Felber, Raluca Halalai, Lorenzo Leonini, Etienne Rivire, Valerio Schiavoni, Jos Valerio Universit de Neuchtel, Switzerland SimGrid User Days 2012 - Ecully, France !"#$% 2 About Me


  1. On The Integration Of !"#$% Pascal Felber, Raluca Halalai, Lorenzo Leonini, Etienne Rivière, Valerio Schiavoni, José Valerio Université de Neuchâtel, Switzerland SimGrid User Days 2012 - Ecully, France !"#$%

  2. 2 About Me • 2010-now : PhD student at the University of Neuchâtel, Switzerland. • Dependable and Distributed Computing Group. • Topic: large-scale distributed systems, cloud computing. • 2007-2009: Research Engineer at INRIA Grenoble, SARDES team. !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  3. 3 Outline • SPLAY overview • Integrating SPLAY and SimGrid • Based on rough ideas • Suggestions are welcome, collaborations even more! !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  4. 4 Motivations • Developing, testing and tuning distributed applications is hard • In Computer Science research, fixing the gap of simplicity between pseudocode description and implementation is hard • Using worldwide testbeds is hard !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  5. 5 What is !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  6. 5 What is !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  7. 5 What is !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  8. 5 What is • Machines contributed by universities, companies,etc. • ~1000 nodes at 531 sites (May 2012) • Shared resources, no privileged access • University-quality Internet links • High resource contention • Faults, churn, packet-loss is the norm • Challenging conditions !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  9. 6 • A testbed is a set of machines for testing your distributed applications/ protocols • Several different testbeds! your local networks of idle our new cluster@UniNE machine workstations !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  10. 7 Daily Job With Distributed Systems !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  11. 7 Daily Job With Distributed Systems 1 code 1 • Write (testbed specific) code • Local tests, in-house cluster, PlanetLab... !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  12. 7 Daily Job With Distributed Systems 2 1 code debug 2 • Debug (in this context, a nightmare) !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  13. 7 Daily Job With Distributed Systems 2 1 code debug 2 • Debug (in this context, a nightmare) !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  14. 7 Daily Job With Distributed Systems 3 1 2 code debug deploy 3 • Deploy, with testbed specific scripts !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  15. 7 Daily Job With Distributed Systems 3 1 2 code debug deploy 3 • Deploy, with testbed specific scripts !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  16. 7 Daily Job With Distributed Systems 4 1 2 3 code debug deploy get logs 4 • Get logs, with testbed specific scripts !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  17. 7 Daily Job With Distributed Systems 4 1 2 3 code debug deploy get logs 4 • Get logs, with testbed specific scripts !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  18. 7 Daily Job With Distributed Systems 5 1 2 3 4 code debug deploy get logs plots 5 • Produce plots, hopefully !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  19. 7 Daily Job With Distributed Systems 1 2 3 4 5 code debug deploy get logs plots 5 • Produce plots, hopefully !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  20. 8 !"#$% at a Glance code debug deploy get logs plots • Supports the development, evaluation, testing, and tuning of distributed applications on any testbed: • In-house cluster, shared testbeds, emulated environments • Provides an easy-to-use pseudocode-like language based on Lua • Write Once, Deploy&Run Everywhere • Open-source: http://www.splay-project.org !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  21. 8 !"#$% at a Glance code debug deploy get logs plots • Supports the development, evaluation, testing, and tuning of distributed applications on any testbed: • In-house cluster, shared testbeds, emulated environments • Provides an easy-to-use pseudocode-like language based on Lua • Write Once, Deploy&Run Everywhere • Open-source: http://www.splay-project.org !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  22. 8 !"#$% at a Glance code debug deploy get logs plots s i t o l p u n d g n e i r f r u o • Supports the development, evaluation, testing, and y tuning of distributed applications on any testbed: • In-house cluster, shared testbeds, emulated environments • Provides an easy-to-use pseudocode-like language based on Lua • Write Once, Deploy&Run Everywhere • Open-source: http://www.splay-project.org !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  23. 9 !"#$% Language • Based on Lua • High-level scripting language • Made for interaction with C • Bytecode-based, garbage collection • Must be close to pseudo code (focus on the algorithm) • & favor “natural ways” of expressing algorithms (e.g. RPCs) • S PLAY applications can be run locally without the deployment infrastructure (for debugging & testing) • Comprehensive set of event-based model (discussed below). events/threads libraries (can be luasocket* io (fs)* stdlib* sb_socket socketevents sb_fs sb_stdlib extended) crypto* llenc json* misc log rpc splay::app * : third ! party and lua libraries : main dependencies Figure 6: http://www.splay-project.org

  24. 10 Why ? • Light & Fast • (Very) Close to equivalent code in C • Concise • Allow developers to focus on ideas more than implementation details • Key for researchers and students • Sandbox thanks to the possibility of easily redefine (even built-in) functions !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  25. 11 Concise !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  26. 11 Concise Pseudo code as published on original paper Executable code using SPLAY libraries !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  27. 12 !"#$% Network Emulation • Similar in the spirit to existing network emulators (ModelNet, Emulab) • Novel features: 1 3 • multi-user 10 Mbps 10ms • multi-topology 2 4 Stream from 1 to 3 Stream from 2 to 4 10 • user-space upload rate (Mbps) 5 3.3 1 0 10 20 30 40 50 60 data transfer time !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  28. 13 !"#$% Network Emulation • XML/TCS formats to define topologies • Support for delay, lossy channels • User-land bandwidth shaping • Emulation of congestion at inner nodes in a completely decentralized fashion • Dynamic adjustments of token-bucket bandwidth shapers !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  29. 14 !"#$% • Integrating the two systems to get the best of both world • Two options: 1. Use Splay apps within SimGrid 2. Use SimGrid apps within Splay !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  30. 15 Splay within SimGrid • Evaluate Splay applications with SimGrid • Different execution models, network emulation • Splay adapter for SimGrid Lua Bindings • Customized sandbox • Customized Splay RPC libraries !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  31. 16 SimGrid within Splay • Evaluate SimGrid applications within Splay testbed • Easier if applications are written in Lua • Alternatively, exploit Splay binary shipping • On-the-fly per-job relaxation of Splay sandbox to allow binary code • What about sandboxing C applications? !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

  32. 17 y a w a - e k a e T d i l S • Distributed systems raise a number of issues for their evaluation • Their implementation, debug, deployment and tuning is hard • leverages Lua and centralized !"#$% controller to produce an easy to use yet powerful working environment !"#$% On The Integration of Splay & SimGrid - Valerio Schiavoni - University of Neuchâtel

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend