A bridging model for parallel computation
Communications of the ACM
A parallel algorithm for multilevel graph partitioning and sparse matrix ordering
Journal of Parallel and Distributed Computing
Model checking
Introduction to Distributed Algorithms
Introduction to Distributed Algorithms
The Case for High-Level Parallel Programming in ZPL
IEEE Computational Science & Engineering
On Identifying Strongly Connected Components in Parallel
IPDPS '00 Proceedings of the 15 IPDPS 2000 Workshops on Parallel and Distributed Processing
An evaluation of global address space languages: co-array fortran and unified parallel C
Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming
Lifting sequential graph algorithms for distributed-memory parallel computation
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
X10: an object-oriented approach to non-uniform cluster computing
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
ACM SIGIR Forum
Improved Distributed Algorithms for SCC Decomposition
Electronic Notes in Theoretical Computer Science (ENTCS)
Spin model checker, the: primer and reference manual
Spin model checker, the: primer and reference manual
Solving Large, Irregular Graph Problems Using Adaptive Work-Stealing
ICPP '08 Proceedings of the 2008 37th International Conference on Parallel Processing
Proceedings of the 20th ACM conference on Hypertext and hypermedia
Efficient large-scale model checking
IPDPS '09 Proceedings of the 2009 IEEE International Symposium on Parallel&Distributed Processing
"To store or not to store" reloaded: reclaiming memory on demand
FMICS'06/PDMC'06 Proceedings of the 11th international workshop, FMICS 2006 and 5th international workshop, PDMC conference on Formal methods: Applications and technology
BEEM: benchmarks for explicit model checkers
Proceedings of the 14th international SPIN conference on Model checking software
Pregel: a system for large-scale graph processing
Proceedings of the 2010 ACM SIGMOD International Conference on Management of data
Multithreaded Asynchronous Graph Traversal for In-Memory and Semi-External Memory
Proceedings of the 2010 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis
SPIN'10 Proceedings of the 17th international SPIN conference on Model checking software
DiVinE: Parallel Distributed Model Checker
PDMC-HIBI '10 Proceedings of the 2010 Ninth International Workshop on Parallel and Distributed Methods in Verification, and Second International Workshop on High Performance Computational Systems Biology
Signal/collect: graph algorithms for the (semantic) web
ISWC'10 Proceedings of the 9th international semantic web conference on The semantic web - Volume Part I
A high-level framework for distributed processing of large-scale graphs
ICDCN'11 Proceedings of the 12th international conference on Distributed computing and networking
DiVinE: a tool for distributed verification
CAV'06 Proceedings of the 18th international conference on Computer Aided Verification
LTSMIN: distributed and symbolic reachability
CAV'10 Proceedings of the 22nd international conference on Computer Aided Verification
Mizan: a system for dynamic load balancing in large-scale graph processing
Proceedings of the 8th ACM European Conference on Computer Systems
A first view of exedra: a domain-specific language for large graph analytics workflows
Proceedings of the 22nd international conference on World Wide Web companion
Hi-index | 0.00 |
Distributed processing of real-world graphs is challenging due to their size and the inherent irregular structure of graph computations. We present HipG, a distributed framework that facilitates programming parallel graph algorithms by composing the parallel application automatically from the user-defined pieces of sequential work on graph nodes. To make the user code high-level, the framework provides a unified interface to executing methods on local and non-local graph nodes and an abstraction of exclusive execution. The graph computations are managed by logical objects called synchronizers, which we used, for example, to implement distributed divide-and-conquer decomposition into strongly connected components. The code written in HipG is independent of a particular graph representation, to the point that the graph can be created on-the-fly, i.e. by the algorithm that computes on this graph, which we used to implement a distributed model checker. HipG programs are in general short and elegant; they achieve good portability, memory utilization, and performance.