Deterministic Reductions in an Asynchronous Parallel Language
Reduction operations are a common and important feature in many parallel programming models. In this paper, the authors present a new reduction construct for Concurrent Collections (CnC). CnC is a deterministic, asynchronous parallel programming model in which data production and reduction can overlap. While reductions are most frequently incorporated in synchronous contexts where all data is available before parallel reduction begins, their solution works for the asynchronous CnC model. They retain the determinism of the CnC parallel programming model while providing an efficient high-level construct for specifying reductions.