iThreads: A Threading Library for Parallel Incremental Computation

Abstract : Incremental computation strives for efficient successive runs of applications by re-executing only those parts of the computation that are affected by a given input change instead of recomputing everything from scratch. To realize these benefits automatically, we describe iThreads, a threading library for parallel incremental computation. iThreads supports unmodified shared-memory multithreaded programs: it can be used as a replacement for pthreads by a simple exchange of dynamically linked libraries, without even re-compiling the application code. To enable such an interface, we designed algorithms and an implementation to operate at the compiled binary code level by leveraging MMU-assisted memory access tracking and process-based thread isolation. Our evaluation on a multicore platform using applications from the PARSEC and Phoenix benchmarks and two case-studies shows significant performance gains.
Document type :
Conference papers
Complete list of metadatas

https://hal.inria.fr/hal-01245884
Contributor : Arthur Charguéraud <>
Submitted on : Thursday, December 17, 2015 - 5:38:46 PM
Last modification on : Thursday, October 10, 2019 - 4:34:03 PM

Identifiers

Collections

Citation

Pramod Bhatotia, Pedro Fonseca, Umut A. Acar, Brandenburg Björn, Rodrigo Rodrigues. iThreads: A Threading Library for Parallel Incremental Computation. Proceedings of the Twentieth International Conference on Architectural Support for Programming Languages and Operating Systems, Mar 2015, Istanbul, Turkey. pp.645--659, ⟨10.1145/2694344.2694371⟩. ⟨hal-01245884⟩

Share

Metrics

Record views

168