Selecting Spatiotemporal Patterns for Development of Parallel Applications

Design patterns for parallel computing attempt to make the field accessible to nonexperts by generalizing the common techniques experts use to develop parallel software. Existing parallel patterns have tremendous descriptive power, but it is often unclear to nonexperts how to choose a pattern based...

Celý popis

Uloženo v:
Podrobná bibliografie
Vydáno v:IEEE transactions on parallel and distributed systems Ročník 23; číslo 10; s. 1970 - 1982
Hlavní autoři: Hoffmann, H., Agarwal, A., Devadas, S.
Médium: Journal Article
Jazyk:angličtina
Vydáno: IEEE 01.10.2012
Témata:
ISSN:1045-9219
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Abstract Design patterns for parallel computing attempt to make the field accessible to nonexperts by generalizing the common techniques experts use to develop parallel software. Existing parallel patterns have tremendous descriptive power, but it is often unclear to nonexperts how to choose a pattern based on the specific performance goals of a given application. This paper addresses the need for a pattern selection methodology by presenting four patterns and an accompanying decision framework for choosing from these patterns given an application's throughput and latency goals. The patterns are based on recognizing that one can partition an application's data or instructions and that these partitionings can be done in time or space, hence we refer to them as spatiotemporal partitioning strategies. This paper introduces a taxonomy that describes each of the resulting four partitioning strategies and presents a three-step methodology for selecting one or more given a throughput and latency goal. Several case studies are presented to illustrate the use of this methodology. These case studies cover several simple examples as well as more complicated applications including a radar processing application and an H.264 video encoder.
AbstractList Design patterns for parallel computing attempt to make the field accessible to nonexperts by generalizing the common techniques experts use to develop parallel software. Existing parallel patterns have tremendous descriptive power, but it is often unclear to nonexperts how to choose a pattern based on the specific performance goals of a given application. This paper addresses the need for a pattern selection methodology by presenting four patterns and an accompanying decision framework for choosing from these patterns given an application's throughput and latency goals. The patterns are based on recognizing that one can partition an application's data or instructions and that these partitionings can be done in time or space, hence we refer to them as spatiotemporal partitioning strategies. This paper introduces a taxonomy that describes each of the resulting four partitioning strategies and presents a three-step methodology for selecting one or more given a throughput and latency goal. Several case studies are presented to illustrate the use of this methodology. These case studies cover several simple examples as well as more complicated applications including a radar processing application and an H.264 video encoder.
Author Devadas, S.
Hoffmann, H.
Agarwal, A.
Author_xml – sequence: 1
  givenname: H.
  surname: Hoffmann
  fullname: Hoffmann, H.
  email: hank@csail.mit.edu
  organization: Comput. Sci. & Artificial Intell. Lab., Massachusetts Inst. of Technol., Cambridge, MA, USA
– sequence: 2
  givenname: A.
  surname: Agarwal
  fullname: Agarwal, A.
  email: agarwal@csail.mit.edu
  organization: Comput. Sci. & Artificial Intell. Lab., Massachusetts Inst. of Technol., Cambridge, MA, USA
– sequence: 3
  givenname: S.
  surname: Devadas
  fullname: Devadas, S.
  email: devadas@csail.mit.edu
  organization: Comput. Sci. & Artificial Intell. Lab., Massachusetts Inst. of Technol., Cambridge, MA, USA
BookMark eNp1kMFKAzEQhnOoYFs9evKyL7B1kk26zbG0apWChdbzkiYTiaSbJQmCb--uFQ-Cp2GY7x9-vgkZtaFFQm4ozCgFeXfYrfczBpTOmFyMyJgCF6VkVF6SSUrvAJQL4GPyvEePOrv2rdh3KruQ8dSFqHyxUzljbFNhQyzW-IE-dCdscxFsf-sJj75Ydp13esi16YpcWOUTXv_MKXl9uD-sNuX25fFptdyWmok6l4JJkJzao5G1FdLUYKDut2ONqrKi1pwpphVyJqhhOLcoFoqbqlIGDApRTUl1_qtjSCmibbTL3xVyVM43FJpBQTMoaAYFTa-gT5V_Ul10JxU__-Vvz7xDxF92DrJvIKsvP39sMQ
CODEN ITDSEO
CitedBy_id crossref_primary_10_1145_2954679_2872402
crossref_primary_10_1145_2980024_2872402
crossref_primary_10_1145_3296957_3173184
Cites_doi 10.1145/1454115.1454128
10.1145/1953611.1953620
10.1145/1168857.1168877
10.1145/1015706.1015800
10.1145/165939.165958
10.1109/ICME.2006.262506
10.1109/SUPERC.1996.183513
10.1109/JPROC.2004.840303
10.1145/605397.605428
10.1109/PROC.1966.5273
10.1109/ISCA.2008.12
ContentType Journal Article
DBID 97E
RIA
RIE
AAYXX
CITATION
DOI 10.1109/TPDS.2011.298
DatabaseName IEEE Xplore (IEEE)
IEEE All-Society Periodicals Package (ASPP) 1998–Present
IEEE Electronic Library (IEL)
CrossRef
DatabaseTitle CrossRef
DatabaseTitleList
Database_xml – sequence: 1
  dbid: RIE
  name: IEEE Electronic Library (IEL)
  url: https://ieeexplore.ieee.org/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
Discipline Engineering
Computer Science
EndPage 1982
ExternalDocumentID 10_1109_TPDS_2011_298
6095539
Genre orig-research
GroupedDBID --Z
-~X
.DC
0R~
29I
4.4
5GY
5VS
6IK
97E
AAJGR
AARMG
AASAJ
AAWTH
ABAZT
ABFSI
ABQJQ
ABVLG
ACGFO
ACIWK
AENEX
AETIX
AGQYO
AGSQL
AHBIQ
AI.
AIBXA
AKJIK
AKQYR
ALLEH
ALMA_UNASSIGNED_HOLDINGS
ASUFR
ATWAV
BEFXN
BFFAM
BGNUA
BKEBE
BPEOZ
CS3
DU5
E.L
EBS
EJD
HZ~
H~9
ICLAB
IEDLZ
IFIPE
IFJZH
IPLJI
JAVBF
LAI
M43
MS~
O9-
OCL
P2P
PQQKQ
RIA
RIE
RNI
RNS
RZB
TN5
TWZ
UHB
VH1
AAYXX
CITATION
ID FETCH-LOGICAL-c257t-5290941fbd97f59d70d07fbdb7ea3f57c42a2cae4251d2e6fe58a4d33ad0de553
IEDL.DBID RIE
ISICitedReferencesCount 3
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000307824600015&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
ISSN 1045-9219
IngestDate Sat Nov 29 08:13:20 EST 2025
Tue Nov 18 20:53:11 EST 2025
Wed Aug 27 02:52:31 EDT 2025
IsPeerReviewed true
IsScholarly true
Issue 10
Language English
License https://ieeexplore.ieee.org/Xplorehelp/downloads/license-information/IEEE.html
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-c257t-5290941fbd97f59d70d07fbdb7ea3f57c42a2cae4251d2e6fe58a4d33ad0de553
PageCount 13
ParticipantIDs crossref_citationtrail_10_1109_TPDS_2011_298
crossref_primary_10_1109_TPDS_2011_298
ieee_primary_6095539
PublicationCentury 2000
PublicationDate 2012-10-01
PublicationDateYYYYMMDD 2012-10-01
PublicationDate_xml – month: 10
  year: 2012
  text: 2012-10-01
  day: 01
PublicationDecade 2010
PublicationTitle IEEE transactions on parallel and distributed systems
PublicationTitleAbbrev TPDS
PublicationYear 2012
Publisher IEEE
Publisher_xml – name: IEEE
References ref13
ref15
Mattson (ref1) 2004
ref14
ref20
van de Geijn (ref9) 1997
ref11
Bienia (ref19)
Siu (ref2)
(ref21) 2011
ref17
ref16
(ref10) 1993
ref8
ref7
ref4
(ref18) 2012
Lea (ref3) 1996
Hoffmann (ref6)
Meyer (ref22)
(ref12) 2006
Snir (ref5) 2012
References_xml – volume-title: Proc. 17th Int’l Conf. Parallel Architectures and Compilation Techniques (PACT ’08)
  ident: ref19
  article-title: The Parsec Benchmark Suite: Characterization and Architectural Implications
  doi: 10.1145/1454115.1454128
– ident: ref4
  doi: 10.1145/1953611.1953620
– volume-title: Proc. 21st Int’l Conf. Parallel and Distributed Computing and Systems
  ident: ref6
  article-title: Partitioning Strategies: Spatiotemporal Patterns of Program Decomposition
– volume-title: Concurrent Programming in Java: Design Principles and Patterns
  year: 1996
  ident: ref3
– volume-title: technical report
  year: 2006
  ident: ref12
  article-title: Supra-Linear Packet Processing Performance with Intel Multi-Core Processors
– volume-title: Using PLAPACK—Parallel Linear Algebra Package
  year: 1997
  ident: ref9
– volume-title: Technical Report CRPC-TR92225
  year: 1993
  ident: ref10
  article-title: High Performance Fortran Language Specification, Version 1.0
– ident: ref13
  doi: 10.1145/1168857.1168877
– ident: ref17
  doi: 10.1145/1015706.1015800
– start-page: 393
  volume-title: Proc. Sixth Ann. European Symp. Algorithms
  ident: ref22
  article-title: Delta-Stepping: A Parallel Single Source Shortest Path Algorithm
– year: 2012
  ident: ref18
  article-title: Intel Threading Building Blocks 2.1 for Open Source
– volume-title: x264
  year: 2011
  ident: ref21
– ident: ref15
  doi: 10.1145/165939.165958
– ident: ref7
  doi: 10.1109/ICME.2006.262506
– volume-title: Proc. Int’l Conf. Parallel and Distributed Processing Techniques and Applications
  ident: ref2
  article-title: Design Patterns for Parallel Programming
– year: 2012
  ident: ref5
  article-title: Parallel Programming Patterns
– ident: ref8
  doi: 10.1109/SUPERC.1996.183513
– ident: ref20
  doi: 10.1109/JPROC.2004.840303
– ident: ref16
  doi: 10.1145/605397.605428
– ident: ref11
  doi: 10.1109/PROC.1966.5273
– volume-title: Patterns for Parallel Programming
  year: 2004
  ident: ref1
– ident: ref14
  doi: 10.1109/ISCA.2008.12
SSID ssj0014504
Score 2.065461
Snippet Design patterns for parallel computing attempt to make the field accessible to nonexperts by generalizing the common techniques experts use to develop parallel...
SourceID crossref
ieee
SourceType Enrichment Source
Index Database
Publisher
StartPage 1970
SubjectTerms Cameras
Decision trees
Design patterns
Indexes
parallel computing
parallel programming
Security
Spatial databases
Spatiotemporal phenomena
Throughput
Title Selecting Spatiotemporal Patterns for Development of Parallel Applications
URI https://ieeexplore.ieee.org/document/6095539
Volume 23
WOSCitedRecordID wos000307824600015&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
journalDatabaseRights – providerCode: PRVIEE
  databaseName: IEEE Electronic Library (IEL)
  issn: 1045-9219
  databaseCode: RIE
  dateStart: 19900101
  customDbUrl:
  isFulltext: true
  dateEnd: 99991231
  titleUrlDefault: https://ieeexplore.ieee.org/
  omitProxy: false
  ssIdentifier: ssj0014504
  providerName: IEEE
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV3dS8MwED_m8EEfnG6K84s8iE-r61ea5lHUISJjsCl7K2lyAWFssg__fpO0qxX0wbeQXml71yN3ucvvB3CtUxPUcpp6DFXoxTIWnpnJPWQ693NKlXB0Pm8vbDhMp1M-akCvOguDiK75DG_t0NXy1UJu7FZZ34Kj0YjvwA5jSXFWq6oYxNRRBZrsgnrcuOE3nmZ_MnoYF2CdIU9_rD81QhW3ngxa_3uTQzgo40ZyVxj6CBo4b0Nry8lAShdtw34NYLADz2NHc2PGZOxap0skqhkZOVzN-YqYoJXUOofIQptrS8uwYp5Wq24fw-vgcXL_5JXsCZ40brg2GSY3qVugc8WZplwxX_nGABZOWUSaMhmHIpQCjdMGKsREI01FrKJIKF-h-boTaM4XczwFglEggoShz3IdJ4hcJkoGVPmpiuJIBl3obXWayRJa3DJczDKXYvg8sybIrAkyY4Iu3FTiHwWmxl-CHav6SqjU-tnv0-ewZ24Mi067C2iulxu8hF35uX5fLa_c3_IFKbC_kw
linkProvider IEEE
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LT8MwDLbGQAIODDYQ45kD4rSyvtI0RwRMA8Y0aQPtVrWJKyFNHdqD30-SdmVIcOAWpVYfdq3YsfN9AFdpqIJaTkOLoXQtX_ixpWYSC1ma2AmlMjZ0Pm891u-H4zEfVKBVnoVBRNN8hjd6aGr5ciqWequsrcHRqMc3YFMzZxWntcqagU8NWaDKL6jFlSN-I2q2R4P7YQ7X6fLwxwq0RqliVpRO7X_vsg97ReRIbnNTH0AFszrUVqwMpHDSOuyuQQw24GloiG7UmAxN83SBRTUhA4Osmc2JClvJWu8Qmabq2kxzrKinrdW3D-G18zC661oFf4IllCMuVI7JVfLmpInkLKVcMlvaygQaUDn2UsqE78auiFG5rSNdDFKkYexLz4ulLVF93RFUs2mGx0DQc2InYGizJPUDRC4CKRwq7VB6viecJrRWOo1EAS6uOS4mkUkybB5pE0TaBJEyQROuS_GPHFXjL8GGVn0pVGj95PfpS9jujl56Ue-x_3wKO-ombt53dwbVxWyJ57AlPhfv89mF-XO-AE8Jwtw
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%3Ajournal&rft.genre=article&rft.atitle=Selecting+Spatiotemporal+Patterns+for+Development+of+Parallel+Applications&rft.jtitle=IEEE+transactions+on+parallel+and+distributed+systems&rft.au=Hoffmann%2C+H.&rft.au=Agarwal%2C+A.&rft.au=Devadas%2C+S.&rft.date=2012-10-01&rft.pub=IEEE&rft.issn=1045-9219&rft.volume=23&rft.issue=10&rft.spage=1970&rft.epage=1982&rft_id=info:doi/10.1109%2FTPDS.2011.298&rft.externalDocID=6095539
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1045-9219&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1045-9219&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1045-9219&client=summon