ACM Home Page
Please provide us with feedback. Feedback
Exploiting loop-dependent stream reuse for stream processors
Full text PdfPdf (671 KB)
Source
PACT archive
Proceedings of the 17th international conference on Parallel architectures and compilation techniques table of contents
Toronto, Ontario, Canada
SESSION: Compilation table of contents
Pages 22-31  
Year of Publication: 2008
ISBN:978-1-60558-282-5
Authors
Xuejun Yang  National University of Defence Technology, ChangSha, China
Ying Zhang  National University of Defence Technology, Changsha, China
Jingling Xue  The University of New South Wales, Sydney, Australia
Ian Rogers  The University of Manchester, Manchester, United Kngdm
Gen Li  National University of Defence Technology, Changsha, China
Guibin Wang  National University of Defence Technology, Changsha, China
Sponsors
ACM: Association for Computing Machinery
SIGARCH: ACM Special Interest Group on Computer Architecture
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 11,   Downloads (12 Months): 118,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1454115.1454121
What is a DOI?

ABSTRACT

The memory access limits the performance of stream processors. By exploiting the reuse of data held in the Stream Register File (SRF), an on-chip storage, the number of memory accesses can be reduced. In current stream compilers reuse is only attempted for simple stream references, those whose start and end are known. Compiler analysis from outside of stream processors does not directly enable the consideration of other complex stream references. In this paper we propose a transformation to automatically optimize stream programs to exploit the reuse supplied by loop-dependent stream references. The transformation is based on three results: algorithms to recognize the reuse supplied by stream references, a new abstract expression called the Stream Reuse Graph (SRG) to depict the reuse and the optimization of the SRG for the transformation. Both the reuse between whole sequences accessed by stream references and that between partial sequences are exploited in the paper. In particular, the problem of exploiting partial stream reuse does not have its parallel in the traditional data reuse exploitation setting (for scalars and arrays). Finally, we have implemented our techniques using the StreamC/KernelC compiler for Imagine. Experimental results show a resultant speedup of 1.14 to 2.54 times using a range of typical stream processing application kernels.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
 
3
4
5
 
6
 
7
 
8
 
9
10
 
11
 
12
 
13
 
14
 
15
 
16
17
18
 
19
 
20
P. Mattson and et al. Imagine Programming System Developer's Guide, 2004.
 
21
M. Narayanan, L. Oliker, A. Janin, P. Husbands, X Ye, and S. Li. Scientific kernels on viram and imagine media processors. Lawrence Berkeley National Laboratory, 2002.
 
22
 
23
24
 
25
R. Stephens. A survey of stream processing. Acta Informatica, 34(7):491--541, 1997.
 
26
27
28
 
29
30


Collaborative Colleagues:
Xuejun Yang: colleagues
Ying Zhang: colleagues
Jingling Xue: colleagues
Ian Rogers: colleagues
Gen Li: colleagues
Guibin Wang: colleagues