scispace - formally typeset
Proceedings ArticleDOI

On the fly MHP analysis

Reads0
Chats0
TLDR
This manuscript proposes a novel scheme to perform incremental MHP analysis (on the fly) of programs written in task parallel languages like X10 to keep the MHP information up to date, in an IDE environment and introduces two new algorithms that deal with addition and removal of parallel constructs like finish, async, atomic, and sequential constructs, on the fly.
Abstract
May-Happen-in-Parallel (MHP) analysis forms the basis for many problems of program analysis and program understanding. MHP analysis can also be used by IDEs (integrated-development-environments) to help programmers to refactor parallel-programs, identify racy programs, understand which parts of the program run in parallel, and so on. Since the code keeps changing in the IDE, re-computing the MHP information after every change can be an expensive affair. In this manuscript, we propose a novel scheme to perform incremental MHP analysis (on the fly) of programs written in task parallel languages like X10 to keep the MHP information up to date, in an IDE environment. The key insight of our proposed approach to maintain the MHP information up to date is that we need not rebuild (from scratch) every data structure related to MHP information, after each modification (addition or deletion of statements) in the source code. The idea is to reuse the old MHP information as much as possible and incrementally recompute the MHP information (of a small set of statements) which depends on the statement added/removed. We introduce two new algorithms that deal with addition and removal of parallel constructs like finish, async, atomic, and sequential constructs like loop, if, if-else and other sequential statements, on the fly. Our evaluation shows that our algorithms run much faster than the repeated invocations of the fastest known MHP analysis for X10 programs [Sankar et al. 2016].

read more

Citations
More filters

IntelliJ IDEA——开发人员利器

陈立兵
TL;DR: Eclipse、IntelliJ IDEA、NetBeans:对于国内很多开发人员来说 ,Eclipse众所周知,Net beans次之LIntelli J IDEA确很少被人了解;IDEA
Posted Content

OpenMP aware MHP Analysis for Improved Static Data-Race Detection.

TL;DR: In this article, the authors present a data flow analysis based, fast, static data race checker in the LLVM compiler framework to detect race conditions in OpenMP programs and improve turnaround time and/or developer productivity.
References
More filters
Journal ArticleDOI

Parallel Programmability and the Chapel Language

TL;DR: A candidate list of desirable qualities for a parallel programming language is offered, and how these qualities are addressed in the design of the Chapel language is described, providing an overview of Chapel's features and how they help address parallel productivity.
Proceedings ArticleDOI

Work-first and help-first scheduling policies for async-finish task parallelism

TL;DR: This paper introduces a new work-stealing scheduler with compiler support for async-finish task parallelism that can accommodate both work- first and help-first scheduling policies, and provides insights on scenarios in which the help- first policy yields better results than the work-first policy and vice versa.
Proceedings ArticleDOI

The Cilk++ concurrency platform

TL;DR: This paper overviews the Cilk++ programming environment, which incorporates a compiler, a runtime system, and a race-detection tool, and provides a "hyperobject" library which allows races on nonlocal variables to be mitigated without lock contention or substantial code restructuring.
Journal ArticleDOI

Complexity of analyzing the synchronization structure of concurrent programs

TL;DR: This paper formalizes the notion of the synchronization structure of concurrent programs that use the rendezvous (or similar) mechanism for achieving synchronization and presents complexity results which indicate what may be expected and shed light on the difficulty of correctly constructing concurrent systems.
Proceedings ArticleDOI

Non-concurrency analysis

TL;DR: This work presents a framework for non-concurrency analysis, capable of incorporating previous analysis algorithms [CS88, DS92] and improving upon them and exhibits dramatic accuracy improvements over [DS91], when the latter is used as a stand-alone algorithm.
Related Papers (5)