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

and efficient graph analysis
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

Green-Marl: A DSL for Easy and Efficient Graph Analysis

Hong, Chafi, Sedlar and Olukotun Reviewed by Neil Satra (ns532)

slide-2
SLIDE 2

OpenMP implementation

slide-3
SLIDE 3

Green-Marl implementation

slide-4
SLIDE 4

Green-Marl needs way fewer Lines of Code

100 200 300 400 500 600 700 800 900 OpenMP Green-Marl

slide-5
SLIDE 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

slide-6
SLIDE 6

High level constructs

  • Graphs, nodes, edges
  • Neighbours (in, out, up and down)
  • Breadth-First and Depth-first search
slide-7
SLIDE 7

Parsing and Checking Target Independent Optimisation Target Dependent Optimisation Code Generation

In goes Green-Marl code Out comes C++/OpenMP code

slide-8
SLIDE 8

Objection: Performance

slide-9
SLIDE 9

Objection: New Language

  • Can interleave with C++ code
  • Tutorial on Github
  • Detailed language specs available online
slide-10
SLIDE 10

Objection: Adoption

  • Production ready – actively maintained on Github
  • Built-in support for Giraph (in sequel to this paper)
slide-11
SLIDE 11

Parsing and Checking Target Independent Optimisation Target Dependent Optimisation Code Generation

In goes Green-Marl code Out comes C++/OpenMP code

slide-12
SLIDE 12

Objection: Adoption

  • Production ready – actively maintained on Github
  • Built-in support for Giraph (in sequel to this paper)
  • Oracle adoption in their graph analytic framework, Oracle PGX
  • No lock in
slide-13
SLIDE 13

Advantages

  • Easier to write graph algorithms*
  • Algorithms perform better
  • Don’t need to rewrite entire application
  • Code is portable across platforms
slide-14
SLIDE 14

Well Evaluated

  • Tested on Random and

Power-law graphs

  • Individual
  • ptimisations tested
slide-15
SLIDE 15

Weakness

Graph is immutable during the analysis

slide-16
SLIDE 16

Summary

  • Write graph analysis portion of software in Green-Marl
  • Get human-readable output in target language
  • With automatic optimisations

Reviewed by Neil Satra ns532@cam.ac.uk