and efficient graph analysis
play

and Efficient Graph Analysis Hong, Chafi, Sedlar and Olukotun - PowerPoint PPT Presentation

Green-Marl: A DSL for Easy and Efficient Graph Analysis Hong, Chafi, Sedlar and Olukotun Reviewed by Neil Satra (ns532) OpenMP implementation Green-Marl implementation Green-Marl needs way fewer Lines of Code 900 800 700 600 500 400 300


  1. Green-Marl: A DSL for Easy and Efficient Graph Analysis Hong, Chafi, Sedlar and Olukotun Reviewed by Neil Satra (ns532)

  2. OpenMP implementation

  3. Green-Marl implementation

  4. Green-Marl needs way fewer Lines of Code 900 800 700 600 500 400 300 200 100 0 OpenMP Green-Marl

  5. Green-Marl is a Domain Specific Language For Graph analysis algorithms With Intuitive high-level constructs Which Expose data-level parallelism inherent in the algorithm

  6. High level constructs o Graphs, nodes, edges o Neighbours (in, out, up and down) o Breadth-First and Depth-first search

  7. In goes Green-Marl code Target Target Parsing and Code Independent Dependent Checking Generation Optimisation Optimisation Out comes C++/OpenMP code

  8. Objection: Performance

  9. Objection: New Language o Can interleave with C++ code o Tutorial on Github o Detailed language specs available online

  10. Objection: Adoption o Production ready – actively maintained on Github o Built-in support for Giraph (in sequel to this paper)

  11. In goes Green-Marl code Target Target Parsing and Code Independent Dependent Checking Generation Optimisation Optimisation Out comes C++/OpenMP code

  12. Objection: Adoption o Production ready – actively maintained on Github o Built-in support for Giraph (in sequel to this paper) o Oracle adoption in their graph analytic framework, Oracle PGX o No lock in

  13. Advantages o Easier to write graph algorithms* o Algorithms perform better o Don’t need to rewrite entire application o Code is portable across platforms

  14. Well Evaluated o Tested on Random and Power-law graphs o Individual optimisations tested

  15. Weakness Graph is immutable during the analysis

  16. Summary o Write graph analysis portion of software in Green-Marl o Get human-readable output in target language o With automatic optimisations Reviewed by Neil Satra ns532@cam.ac.uk

Recommend


More recommend