An empirical characterization of stream programs and its implications for language and compiler design

Stream programs represent an important class of high-performance computations. Defined by their regular processing of sequences of data, stream programs appear most commonly in the context of audio, video, and digital signal processing, though also in networking, encryption, and other areas. In orde...

Full description

Saved in:
Bibliographic Details
Published in:PACT '10 : proceedings of the Nineteenth International Conference on Parallel Architectures and Compilation Techniques : September 11-15, 2010, Vienna, Austria pp. 365 - 376
Main Authors: Thies, William, Amarasinghe, Saman
Format: Conference Proceeding
Language:English
Published: ACM 11.09.2010
Subjects:
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Abstract Stream programs represent an important class of high-performance computations. Defined by their regular processing of sequences of data, stream programs appear most commonly in the context of audio, video, and digital signal processing, though also in networking, encryption, and other areas. In order to develop effective compilation techniques for the streaming domain, it is important to understand the common characteristics of these programs. Prior characterizations of stream programs have examined legacy implementations in C, C++, or FORTRAN, making it difficult to extract the high-level properties of the algorithms. In this work, we characterize a large set of stream programs that was implemented directly in a stream programming language, allowing new insights into the high-level structure and behavior of the applications. We utilize the StreamIt benchmark suite, consisting of 65 programs and 33,600 lines of code. We characterize the bottlenecks to parallelism, the data reference patterns, the input/output rates, and other properties. The lessons learned have implications for the design of future architectures, languages and compilers for the streaming domain.
AbstractList Stream programs represent an important class of high-performance computations. Defined by their regular processing of sequences of data, stream programs appear most commonly in the context of audio, video, and digital signal processing, though also in networking, encryption, and other areas. In order to develop effective compilation techniques for the streaming domain, it is important to understand the common characteristics of these programs. Prior characterizations of stream programs have examined legacy implementations in C, C++, or FORTRAN, making it difficult to extract the high-level properties of the algorithms. In this work, we characterize a large set of stream programs that was implemented directly in a stream programming language, allowing new insights into the high-level structure and behavior of the applications. We utilize the StreamIt benchmark suite, consisting of 65 programs and 33,600 lines of code. We characterize the bottlenecks to parallelism, the data reference patterns, the input/output rates, and other properties. The lessons learned have implications for the design of future architectures, languages and compilers for the streaming domain.
Author Amarasinghe, Saman
Thies, William
Author_xml – sequence: 1
  givenname: William
  surname: Thies
  fullname: Thies, William
  email: thies@microsoft.com
  organization: Microsoft Res. India, Bangalore, India
– sequence: 2
  givenname: Saman
  surname: Amarasinghe
  fullname: Amarasinghe, Saman
  email: saman@mit.edu
  organization: Massachusetts Inst. of Technol., Cambridge, MA, USA
BookMark eNotjj9PwzAUxI0EElAyM7D4C7TYeTG2x6rin1SJBebqxXkORokd2WGAT08K3HLD_e50l-w0pkiMXUuxkbJRt9KoptawOTpIe8Iqq80SCBBSG33OqlI-xCKtQDTqgvlt5DROIQeHA3fvmNHNlMM3ziFFnjwvcyYc-ZRTn3EsHGPHw1x4GKdhKR2xwn3KfMDYf2JPv4RLy-hAmXdUQh-v2JnHoVD17yv29nD_unta718en3fb_RpBwrx2pnYSvSa4MwTGtqi1l265W1tVI7YOqfHeOqs0AFotu9aga3WD1ArjYcVu_nYDER2mHEbMXwdtlFSg4AcozFjr
ContentType Conference Proceeding
DBID 6IE
6IL
CBEJK
RIE
RIL
DOI 10.1145/1854273.1854319
DatabaseName IEEE Electronic Library (IEL) Conference Proceedings
IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume
IEEE Xplore All Conference Proceedings
IEEE Electronic Library (IEL)
IEEE Proceedings Order Plans (POP All) 1998-Present
DatabaseTitleList
Database_xml – sequence: 1
  dbid: RIE
  name: IEEE Xplore
  url: https://ieeexplore.ieee.org/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISBN 9781450301787
1450301789
EndPage 376
ExternalDocumentID 7851535
Genre orig-research
GroupedDBID 6IE
6IL
ACM
ALMA_UNASSIGNED_HOLDINGS
APO
CBEJK
GUFHI
LHSKQ
RIE
RIL
ID FETCH-LOGICAL-a313t-c82c1af7e368e389ba77f1c0072952aabcae4ff9c95733a971db8acb74aeb08f3
IEDL.DBID RIE
ISICitedReferencesCount 73
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000286903000035&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
IngestDate Wed Aug 27 02:39:51 EDT 2025
IsDoiOpenAccess false
IsOpenAccess true
IsPeerReviewed false
IsScholarly true
Language English
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-a313t-c82c1af7e368e389ba77f1c0072952aabcae4ff9c95733a971db8acb74aeb08f3
PageCount 12
ParticipantIDs ieee_primary_7851535
PublicationCentury 2000
PublicationDate 2010-09-11
PublicationDateYYYYMMDD 2010-09-11
PublicationDate_xml – month: 09
  year: 2010
  text: 2010-09-11
  day: 11
PublicationDecade 2010
PublicationTitle PACT '10 : proceedings of the Nineteenth International Conference on Parallel Architectures and Compilation Techniques : September 11-15, 2010, Vienna, Austria
PublicationTitleAbbrev PACT
PublicationYear 2010
Publisher ACM
Publisher_xml – name: ACM
SSID ssj0000753045
Score 2.17432
Snippet Stream programs represent an important class of high-performance computations. Defined by their regular processing of sequences of data, stream programs appear...
SourceID ieee
SourceType Publisher
StartPage 365
SubjectTerms Benchmark testing
Computer architecture
Computer languages
Design
Experimentation
Finite impulse response filters
Languages
Pipelines
Streaming media
Transform coding
Title An empirical characterization of stream programs and its implications for language and compiler design
URI https://ieeexplore.ieee.org/document/7851535
WOSCitedRecordID wos000286903000035&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV07b8IwELYAdehEW6j6loeONeDYseOxqoo6IYZWYkOOcycxEBCE_v7aTkgZunRKFEWJ5Cj-Tnffg5BnBL8tFsqxCcqESSksMykUTAHKVKJWJp_EsAk9m2WLhZl3yEurhQGASD6DUTiNs_xi4w6hVTYOQfKpSLukq7WqtVptP8VDXxj6Ne49XKZjj0TSg_MoHEVw0jmJT4noMe3_770XZPgrw6PzFmAuSQfKK9I_5jDQ5rccEHwtKay3q-j2QV1rwVwrLOkGaVCE2DVtyFh7asuCrqo9XZ3wyakvX-mxfRnvCHRzv2nsaBFpHkPyNX3_fPtgTX4Cs4KLirkscdyiBqEy8IVJbrVG7qJZeJpYmzsLEtE4E0wRrdG8yDPrci0t5JMMxTXplZsSbggVaDGG93GlJGaJNeCfLBX6AkM5hFsyCMu23NYWGctmxe7-vnxPzushvGGcP5BetTvAIzlz39Vqv3uK3_UHtjmnVQ
linkProvider IEEE
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV3NT8IwFG8QTfSECsZve_BoYV27bj0aI8GIhAMm3EjXvSY7OAgM_37bbkwOXjxtWZYt6bL-Xt77fSD0aMBui5nQJDA8JJwzRWQEGRFgeMRNLGQa-LCJeDJJ5nM5baGnRgsDAJ58Bn136mf52VJvXats4ILkIxYdoMOI8zCo1FpNR8WCnxv71f49lEcDi0XcwnPfHZnz0tkLUPH4Mez8782nqPcrxMPTBmLOUAuKc9TZJTHg-sfsIvNcYPha5d7vA-vGhLnSWOKlwU4Tor5wTcfaYFVkOC83ON9jlGNbwOJdA9Pf4QjndttY48wTPXroc_g6exmROkGBKEZZSXQSaqpMDEwkYEuTVMWxodrbhUehUqlWwI2RWjpbRCVjmqWJ0mnMFaRBYtgFahfLAi4RZkYZH99HheAmCZUE-2QujC0xhDZwhbpu2RaryiRjUa_Y9d-XH9DxaPYxXozfJu836KQayUtC6S1ql-st3KEj_V3mm_W9_8Y_lIKqnA
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=PACT+%2710+%3A+proceedings+of+the+Nineteenth+International+Conference+on+Parallel+Architectures+and+Compilation+Techniques+%3A+September+11-15%2C+2010%2C+Vienna%2C+Austria&rft.atitle=An+empirical+characterization+of+stream+programs+and+its+implications+for+language+and+compiler+design&rft.au=Thies%2C+William&rft.au=Amarasinghe%2C+Saman&rft.date=2010-09-11&rft.pub=ACM&rft.spage=365&rft.epage=376&rft_id=info:doi/10.1145%2F1854273.1854319&rft.externalDocID=7851535