scispace - formally typeset
Proceedings ArticleDOI

Green-Marl: a DSL for easy and efficient graph analysis

Reads0
Chats0
TLDR
This paper describes Green-Marl, a domain-specific language (DSL) whose high level language constructs allow developers to describe their graph analysis algorithms intuitively, but expose the data-level parallelism inherent in the algorithms.
Abstract
The increasing importance of graph-data based applications is fueling the need for highly efficient and parallel implementations of graph analysis software. In this paper we describe Green-Marl, a domain-specific language (DSL) whose high level language constructs allow developers to describe their graph analysis algorithms intuitively, but expose the data-level parallelism inherent in the algorithms. We also present our Green-Marl compiler which translates high-level algorithmic description written in Green-Marl into an efficient C++ implementation by exploiting this exposed data-level parallelism. Furthermore, our Green-Marl compiler applies a set of optimizations that take advantage of the high-level semantic knowledge encoded in the Green-Marl DSL. We demonstrate that graph analysis algorithms can be written very intuitively with Green-Marl through some examples, and our experimental results show that the compiler-generated implementation out of such descriptions performs as well as or better than highly-tuned hand-coded implementations.

read more

Content maybe subject to copyright    Report

Citations
More filters
Posted Content

Compilation Techniques for Graph Algorithms on GPUs

TL;DR: GG as mentioned in this paper is an extension to the GraphIt compiler framework that achieves high performance on both CPUs and GPUs using the same algorithm specification, but it does not support generating high performance code for GPUs, and programmers must resort to re-implementing the entire algorithm from scratch in a low-level language with an entirely different set of abstractions and optimizations.
ReportDOI

An Xdata Architecture for Federated Graph Models and Multi-tier Asymmetric Computing

TL;DR: Research shows that GPUs provide a high-performance, data-parallel, commodity hardware platform for graph analytics, and shows that they are critical for a large range of application domains.
Posted Content

GOOL: A Generic Object-Oriented Language (extended version)

TL;DR: GOOL is an embedded DSL in Haskell that can generate code in Python, Java, C# and C++ and it is shown how GOOL programs can be used to generate human-readable, documented and idiomatic source code in multiple languages.
DissertationDOI

A hybrid approach for selecting and optimizing graph traversal strategy for analyzing big code

TL;DR: A Hybrid Approach for Selecting and Optimizing Graph Traversal Strategy for Analyzing Big code and using the selected traversal strategy, the running times of the analyses on BigCode in the evaluation were considerably reduced.
References
More filters

The igraph software package for complex network research

TL;DR: Platform-independent and open source igraph aims to satisfy all the requirements of a graph package while possibly remaining easy to use in interactive mode as well.
Book ChapterDOI

Introduction to Algorithms

Xin-She Yang
TL;DR: This chapter provides an overview of the fundamentals of algorithms and their links to self-organization, exploration, and exploitation.
Journal ArticleDOI

A faster algorithm for betweenness centrality

TL;DR: New algorithms for betweenness are introduced in this paper and require O(n + m) space and run in O(nm) and O( nm + n2 log n) time on unweighted and weighted networks, respectively, where m is the number of links.
Related Papers (5)