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...
Saved in:
| 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: | , |
| 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 |