Withdraw
Loading…
JFlow: Practical Refactorings for Flow-based Parallelism
Chen, Nicholas
Loading…
Permalink
https://hdl.handle.net/2142/44034
Description
- Title
- JFlow: Practical Refactorings for Flow-based Parallelism
- Author(s)
- Chen, Nicholas
- Contributor(s)
- Johnson, Ralph E.
- Issue Date
- 2013-05
- Keyword(s)
- refactoring, parallelism, transformation, analysis
- Abstract
- Emerging applications in the domains of recognition, mining and synthesis (RMS); image and video processing; data warehousing; and automatic financial trading admit a particular style of parallelism termed flow-based parallelism. To help developers exploit flow-based parallelism, popular parallel libraries such as Groovy's GPars, Intel's TBB Flow Graph and Microsoft's TPL Dataflow have begun introducing many new and useful constructs. However, to reap the benefits of such constructs, developers must first use them. This involves refactoring their existing sequential code to incorporate these constructs –-- a manual process that overwhelms even experts. To alleviate this burden, we introduce a set of novel analyses and transformations targeting flow-based parallelism. We implemented these ideas in JFlow, an interactive refactoring tool integrated into the Eclipse IDE. We used JFlow to parallelize seven applications: four from a previously known benchmark and three from a suite of large open source projects. Our evaluation on these applications demonstrates that JFlow, with some minimal interaction from the developer, can successfully parallelize applications from the aforementioned domains with good performance (offering up to 3.45x speedup on a 4-core machine) and is fast enough to be used interactively as part of a developer's workflow.
- Type of Resource
- text
- Language
- en
- Permalink
- http://hdl.handle.net/2142/44034
- Sponsor(s)/Grant Number(s)
- DOE DE-FG02-06ER25752
Owning Collections
Manage Files
Loading…
Edit Collection Membership
Loading…
Edit Metadata
Loading…
Edit Properties
Loading…
Embargoes
Loading…