loading...
Stream Programming on General-Purpose Processors
Barcelona, Spain November 12-November 16
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MICRO.2005.3238th Annual IEEE/ACM International Sy ...
 This Article 
 
PDF
HTML
 
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Jayanth Gummaraju, Stanford University
Mendel Rosenblum, Stanford University

In this paper we investigate mapping stream programs (i.e., programs written in a streaming style for streaming architectures such as Imagine and Raw) onto a general-purpose CPU. We develop and explore a novel way of mapping these programs onto the CPU. We show how the salient features of stream programming such as computation kernels, local memories, and asynchronous bulk memory loads and stores can be easily mapped by a simple compilation system to CPU features such as the processor caches, simultaneous multi-threading, and fast inter-thread communication support, resulting in an executable that efficiently uses CPU resources.

We present an evaluation of our mapping on a hyperthreaded Intel Pentium 4 CPU as a canonical example of a general-purpose processor. We compare the mapped stream program against the same program coded in a more conventional style for the general-purpose processor. Using both micro-benchmarks and scientific applications we show that programs written in a streaming style can run comparably to equivalent programs written in a traditional style. Our results show that coding programs in a streaming style can improve performance on today?s machines and smooth the way for significant performance improvements with the deployment of streaming architectures.

Index Terms:
stream architectures/programming, prefetching, hyper-threading.
Citation:
Jayanth Gummaraju, Mendel Rosenblum, "Stream Programming on General-Purpose Processors," micro, pp.343-354, 38th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'05), 2005
Usage of this product signifies your acceptance of the Terms of Use.