A software pipelining algorithm of streaming applications with low buffer requirements

Scientia Iranica - Tập 19 - Trang 627-634 - 2012
A. Hatanaka1, N. Bagherzadeh1
1Department of Electrical Engineering and Computer Science, University of California, Irvine, 2200 Engineering Hall, Irvine, CA 92697-2625, USA

Tài liệu tham khảo

Kahn, 1974, The semantics of a simple language for parallel programming, 471 Lee, 1987, Static scheduling of synchronous data flow programs for digital signal processing, IEEE Trans. Comput., 36, 24, 10.1109/TC.1987.5009446 Buck, 2004, Brook for GPUs: stream computing on graphics hardware, ACM Trans. Graph., 23, 777, 10.1145/1015706.1015800 Thies, W. and Karczmarek, M., et al. “StreamIt: a language for streaming applications”, International Conference on Compiler Construction, Grenoble, France (Apr 2002). [Online] Available: http://groups.csail.mit.edu/commit/papers/02/streamitcc.pdf. Kapasi, U. and Dally, W.J., et al. “The imagine stream processor”, Proceedings 2002 IEEE International Conference on Computer Design, pp. 282–288 (Sep. 2002). Kistler, 2006, Cell multiprocessor communication network: built for speed, IEEE Micro, 26, 10, 10.1109/MM.2006.49 Lam, M. “Software pipelining: An effective scheduling technique for VLIW machines”, Conference on Programming Language Design and Implementation, pp. 318–328 (1988). Rau, B. “Iterative modulo scheduling: an algorithm for software pipelining loops”, Proceedings of the 27th Annual International Symposium on Microarchitecture, pp 63–74 (1994). Choi, 2009, Stream compilation for real-time embedded multicore systems, 210 Kahle, 2005, Introduction to the cell multiprocessor, IBM J. Res. Dev., 49, 589, 10.1147/rd.494.0589 Ralphs, 2005, The SYMPHONY callable library for mixed integer programming, The Next Wave in Computing, Optimization, and Decision Technologies, 29, 61, 10.1007/0-387-23529-9_5 Gordon, 2006, Exploiting coarse-grained task, data, and pipeline parallelism in stream programs, 151 Taylor, 2002, The raw microprocessor: a computational fabric for software circuits and general purpose programs, IEEE Micro, 22, 25, 10.1109/MM.2002.997877 Kudlur, 2008, Orchestrating the execution of stream programs on multicore platforms, SIGPLAN Not., 43, 114, 10.1145/1379022.1375596 Hormati, 2009, Flextream: adaptive compilation of streaming applications for heterogeneous architectures, 214 Udupa, 2009, Software pipelined execution of stream programs on GPUs, 200