Sciweavers

TACAS
2010
Springer

Automatic Analysis of Scratch-Pad Memory Code for Heterogeneous Multicore Processors

14 years 6 months ago
Automatic Analysis of Scratch-Pad Memory Code for Heterogeneous Multicore Processors
Modern multicore processors, such as the Cell Broadband Engine, achieve high performance by equipping accelerator cores with small “scratchpad” memories. The price for increased performance is higher programming complexity – the programmer must manually orchestrate data movement using direct memory access (DMA) operations. Programming using asynchronous DMAs is error-prone, and DMA races can lead to nondeterministic bugs which are hard to reproduce and fix. We present a method for DMA race analysis which automatically instruments the program with assertions modelling the semantics of a memory flow controller. To enable automatic verification of instrumented programs, we present a new formulation of k-induction geared towards software, as a proof rule operating on loops. We present a tool, SCRATCH, which we apply to a large set of programs supplied with the IBM Cell SDK, in which we discover a previously unknown bug. Our experimental results indicate that our kinduction method ...
Alastair F. Donaldson, Daniel Kroening, Philipp R&
Added 14 May 2010
Updated 14 May 2010
Type Conference
Year 2010
Where TACAS
Authors Alastair F. Donaldson, Daniel Kroening, Philipp Rümmer
Comments (0)