1. Dynamic verification for hybrid concurrent programming models
- Author
-
Osman Unsal, Erdal Mutlu, Serdar Tasiran, Adrian Cristal, and Vladimir Gajinov
- Subjects
Computer science ,Programming language ,Dataflow ,Concurrency ,Transactional memory ,computer.software_genre ,Runtime system ,Shared memory ,Synchronization (computer science) ,Dynamic verification ,Programming paradigm ,Concurrent computing ,computer - Abstract
© Springer International Publishing Switzerland 2014. We present a dynamic verification technique for a class of concurrent programming models that combine dataflow and shared memory programming. In this class of hybrid concurrency models, programs are built from tasks whose data dependencies are explicitly defined by a programmer and used by the runtime system to coordinate task execution. Differently from pure dataflow, tasks are allowed to have shared state which must be properly protected using synchronization mechanisms, such as locks or transactional memory (TM). While these hybrid models enable programmers to reason about programs, especially with irregular data sharing and communication patterns, at a higher level, they may also give rise to new kinds of bugs as they are unfamiliar to the programmers. We identify and illustrate a novel category of bugs in these hybrid concurrency programming models and provide a technique for randomized exploration of program behaviors in this setting.
- Published
- 2014