A sound and complete abstraction for reasoning about parallel prefix sums
A sound and complete abstraction for reasoning about parallel prefix sums
复制标题
用于推理并行前缀和的合理且完整的抽象
DOI:
10.1145/2535838.2535882
复制
发表时间:
2014
期刊:
影响因子:
--
通讯作者:
Chong N
中科院分区:
文献类型:
--
作者:
Chong N
Prefix sums are key building blocks in the implementation of many concurrent software applications, and recently much work has gone into efficiently implementing prefix sums to run on massively parallel graphics processing units (GPUs). Because they lie at the heart of many GPU-accelerated applications, the correctness of prefix sum implementations is of prime importance.We introduce a novel abstraction, the interval of summations, that allows scalable reasoning about implementations of prefix sums. We present this abstraction as a monoid, and prove a soundness and completeness result showing that a generic sequential prefix sum implementation is correct for an array of lengthif and only if it computes the correct result for a specific test case when instantiated with the interval of summations monoid. This allows correctness to be established by running a single test where the input and result require O(n lg(n)) space. This improves upon an existing result by Sheeran where the input requires O(n lg(n)) space and the result O(n2\lg(n)) space, and is more feasible for largenthan a method by Voigtlaender that uses O(n) space for the input and result but requires running O(n2) tests. We then extend our abstraction and results to the context of data-parallel programs, developing an automated verification method for GPU implementations of prefix sums. Our method uses static verification to prove that a generic prefix sum implementation is data race-free, after which functional correctness of the implementation can be determined by running a single test case under the interval of summations abstraction.We present an experimental evaluation using four different prefix sum algorithms, showing that our method is highly automatic, scales to large thread counts, and significantly outperforms Voigtlaender's method when applied to large arrays.
登录
查看更多内容
DOI:
10.1007/978-3-540-27764-4_11
发表时间:
2004
期刊:
American journal of kidney diseases : the official journal of the National Kidney Foundation
影响因子:
--
作者:
R. Hinze
通讯作者:
R. Hinze
DOI:
--
发表时间:
2011
期刊:
Haifa Verification Conference
影响因子:
--
作者:
Peter Collingbourne;Cristian Cadar;P. Kelly
通讯作者:
P. Kelly
影响因子:
4.3
作者:
P. Sanders;J. Träff
通讯作者:
J. Träff
影响因子:
1.5
作者:
Ö. Eğecioğlu;Efstratios Gallopoulos;Ç. Koç
通讯作者:
Ç. Koç
影响因子:
12.6
作者:
Guodong Li;G. Gopalakrishnan
通讯作者:
G. Gopalakrishnan