arrow
Return

Deadlock-free buffer configuration for stream computing

delete2016-12-20
delete2
PRE
AI
P
Peng Li *
J
Jonathan Curtis Beard
J
Jeremy Buhler
DOI:10.1177/1094342016675679delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Stream computing is a popular paradigm for parallel and distributed computing, where compute nodes are connected by first-in first-out data channels. Each channel can be considered as a concatenation of several data buffers, including an output buffer for the sender and an input buffer for the receiver. The configuration of buffer sizes impacts the performance as well as the correctness of the application. In this article, we focus on application deadlocks that are caused by incorrect configuration of buffer sizes. We describe three types of deadlock in streaming applications, categorized by how they can be created. To avoid them, we first prove necessary and sufficient conditions for deadlock-free computations; then based on the theorems, we propose both compile-time and runtime solutions for deadlock avoidance.
Keywords:
Buffer configuration
deadlock avoidance
feedback channels
parallel and distributed computing
streaming computing

Journal

International Journal of High Performance Computing Applications cover
International Journal of High Performance Computing Applications
IF:
2.5
Papers:
1.1K
Citations:
1.3K

Organization

W
washington university (wustl)
Scholars:
5.5W
Papers: 4.5W
Citations: 70