A DSL Based Toolchain for Design Space Exploration in Structured Parallel Programming

We introduce a DSL based toolchain supporting the design of parallel applications where parallelism is structured after parallel design pattern compositions. A DSL provides the possibility to write high level parallel design pattern expressions representing the structure of parallel applications, to...

Celý popis

Uložené v:
Podrobná bibliografia
Vydané v:Procedia computer science Ročník 80; s. 1519 - 1530
Hlavní autori: Danelutto, Marco, Torquati, Massimo, Kilpatrick, Peter
Médium: Journal Article
Jazyk:English
Vydavateľské údaje: Elsevier B.V 2016
Predmet:
ISSN:1877-0509, 1877-0509
On-line prístup:Získať plný text
Tagy: Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
Abstract We introduce a DSL based toolchain supporting the design of parallel applications where parallelism is structured after parallel design pattern compositions. A DSL provides the possibility to write high level parallel design pattern expressions representing the structure of parallel applications, to refactor the pattern expressions, to evaluate their non-functional properties (e.g. ideal performance, total parallelism degree, etc.) and finally to generate parallel code ready to be compiled and run on different target architectures. We discuss a proof-of-concept prototype implementation of the proposed toolchain generating FastFlow code and show some preliminary results achieved using the prototype implementation.
AbstractList We introduce a DSL based toolchain supporting the design of parallel applications where parallelism is structured after parallel design pattern compositions. A DSL provides the possibility to write high level parallel design pattern expressions representing the structure of parallel applications, to refactor the pattern expressions, to evaluate their non-functional properties (e.g. ideal performance, total parallelism degree, etc.) and finally to generate parallel code ready to be compiled and run on different target architectures. We discuss a proof-of-concept prototype implementation of the proposed toolchain generating FastFlow code and show some preliminary results achieved using the prototype implementation.
Author Danelutto, Marco
Kilpatrick, Peter
Torquati, Massimo
Author_xml – sequence: 1
  givenname: Marco
  surname: Danelutto
  fullname: Danelutto, Marco
  email: marcod@cse.concordia.ca
  organization: Department Computer Science, University of Pisa, Italy
– sequence: 2
  givenname: Massimo
  surname: Torquati
  fullname: Torquati, Massimo
  email: torquati@cse.concordia.ca
  organization: Department Computer Science, University of Pisa, Italy
– sequence: 3
  givenname: Peter
  surname: Kilpatrick
  fullname: Kilpatrick, Peter
  email: p.kilpatrick@qub.ac.uk
  organization: Queen's University Belfast, UK
BookMark eNqFkM1OwzAMgCM0JMbYE3DJC7QkTdM0Bw5jGz_SJCZ1O0dZfkamrqmSDsHb020cEAfwxbasz7K_azBofGMAuMUoxQgXd7u0DV7FNOubFNE0Z-wCDHHJWIIo4oMf9RUYx7hDfZCy5JgNwXoCZ9UCPshoNFx5X6s36RpofYAzE922gVUrlYHzj7b2QXbON7CfV104qO4Qemgpg6xrU8Nl8Nsg93vXbG_ApZV1NOPvPALrx_lq-pwsXp9eppNFokhedgkrN9hSq1FmiWJFjjZUWaVJzjdcSyqRRQXhmueq4JqqjNvMUkyKnJeEEUTICPDzXhV8jMFYoVx3OrIL0tUCI3FUJHbipEgcFQlERa-oZ8kvtg1uL8PnP9T9mTL9W-_OBBGVM40y2gWjOqG9-5P_Alnzg4k
CitedBy_id crossref_primary_10_1007_s11227_018_2448_9
Cites_doi 10.1007/978-3-319-15940-9_2
10.1145/2254064.2254079
10.1145/2642937.2643005
10.1002/spe.1026
10.1504/IJHPCN.2012.046370
10.1145/1863482.1863487
10.1007/978-3-642-40922-6_8
10.1145/1989493.1989508
10.1145/2694344.2694364
10.1007/s10766-013-0266-5
ContentType Journal Article
Copyright 2016
Copyright_xml – notice: 2016
DBID 6I.
AAFTH
AAYXX
CITATION
DOI 10.1016/j.procs.2016.05.477
DatabaseName ScienceDirect Open Access Titles
Elsevier:ScienceDirect:Open Access
CrossRef
DatabaseTitle CrossRef
DatabaseTitleList
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 1877-0509
EndPage 1530
ExternalDocumentID 10_1016_j_procs_2016_05_477
S1877050916309620
GroupedDBID --K
0R~
0SF
1B1
457
5VS
6I.
71M
AACTN
AAEDT
AAEDW
AAFTH
AAIKJ
AALRI
AAQFI
AAXUO
ABMAC
ACGFS
ADBBV
ADEZE
AEXQZ
AFTJW
AGHFR
AITUG
ALMA_UNASSIGNED_HOLDINGS
AMRAJ
E3Z
EBS
EJD
EP3
FDB
FNPLU
HZ~
IXB
KQ8
M41
M~E
NCXOZ
O-L
O9-
OK1
P2P
RIG
ROL
SES
SSZ
9DU
AAYWO
AAYXX
ABWVN
ACRPL
ACVFH
ADCNI
ADNMO
ADVLN
AEUPX
AFPUW
AIGII
AKBMS
AKRWK
AKYEP
CITATION
~HD
ID FETCH-LOGICAL-c348t-78b1f5fd02f3c7640b5cfcd349b9da5a0f0639d94c69d5c29f2f5136498373033
ISICitedReferencesCount 3
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000579452200143&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
ISSN 1877-0509
IngestDate Sat Nov 29 02:44:54 EST 2025
Tue Nov 18 22:21:26 EST 2025
Wed May 17 00:58:03 EDT 2023
IsDoiOpenAccess true
IsOpenAccess true
IsPeerReviewed true
IsScholarly true
Keywords DSL
design space exploration
parallel design patterns
non-functional concerns
Language English
License This is an open access article under the CC BY-NC-ND license.
LinkModel OpenURL
MergedId FETCHMERGED-LOGICAL-c348t-78b1f5fd02f3c7640b5cfcd349b9da5a0f0639d94c69d5c29f2f5136498373033
OpenAccessLink https://dx.doi.org/10.1016/j.procs.2016.05.477
PageCount 12
ParticipantIDs crossref_citationtrail_10_1016_j_procs_2016_05_477
crossref_primary_10_1016_j_procs_2016_05_477
elsevier_sciencedirect_doi_10_1016_j_procs_2016_05_477
PublicationCentury 2000
PublicationDate 2016
2016-00-00
PublicationDateYYYYMMDD 2016-01-01
PublicationDate_xml – year: 2016
  text: 2016
PublicationDecade 2010
PublicationTitle Procedia computer science
PublicationYear 2016
Publisher Elsevier B.V
Publisher_xml – name: Elsevier B.V
References volume 8606 of
Yuan Tang, Rezaul Alam Chowdhury, Bradley C. Kuszmaul, Chi-Keung Luk, and Charles E. Leiserson. The pochoir stencil compiler. In
ASE ‘14, pages 289-300, New York, NY, USA, 2014. ACM.
Christopher Brown, Marco Danelutto, Kevin Hammond, Peter Kilpatrick, Archibald Elliott (bib0015) 2014; 42
Marco Danelutto, Massimo Torquati, and Peter Kilpatrick. State access patterns in embarrassingly parallel computations. In Proc. of the HLPGPU 2016 Workshop, HiPEAC 2016, Prague, 2016.
Horacio González-Vélez, Mario Leyton (bib0050) 2010; 40
Marco Aldinucci and Marco Danelutto. Stream parallel skeleton optimization. In
Christopher Earl, Matthew Might, Abhishek Bagusetty, James (bib0035) 2016
pages 105-119. Springer Berlin Heidelberg, 2013.
pages 29-75. Springer International Publishing, 2015.
Hani Abdeen, Dániel Varró, Houari Sahraoui, András Szabolcs Nagy, Csaba Debreceni, Ábel Hegedüs, and Ákos Horváth. Multi-objective optimization in rule-based design space exploration. In
Bo Joel Svensson, Mary Sheeran, Ryan Newton (bib0075) April 2014; 12
Dalvan Griebler and Luiz Gustavo Fernandes. Towards a domain-specific language for patterns- oriented parallel programming. In André Rauber Du Bois and Phil Trinder, editors
HLPP ‘10, pages 5-14, New York, NY, USA, 2010. ACM.
Marco Danelutto and Massimo Torquati. Structured parallel programming with core fastflow. In Viktria Zsk, Zoltn Horvth, and Lehel Csat, editors
Timothy Mattson, Beverly Sanders, and Berna Massingill.
Addison-Wesley Professional, first edition, 2004.
SPAA ‘11, pages 117-128, New York, NY, USA, 2011. ACM.
Ravi Teja Mullapudi, Vinay Vasista, and Uday Bondhugula. Polymage: Automatic optimization for image processing pipelines. In
PLDI ‘12, pages 111-120, New York, NY, USA, 2012. ACM.
Charisee Chiw, Gordon Kindlmann, John Reppy, Lamont Samuels, and Nick Seltzer. Diderot: A parallel dsl for image analysis and visualization. In
ASPLOS ‘15, pages 429-443, New York, NY, USA, 2015. ACM.
pages 955-962. IASTED/ACTA press, 1999.
Arvind, Kevin, Hyoukjoong Lee, Tiark Rompf, Hassan Chafi, Martin Odersky, Kunle Olukotun (bib0070) April 2014; 13
volume 8129 of
Johan Enmyren and Christoph W. Kessler. Skepu: A multi-backend skeleton programming library for multi-gpu systems. In
Steffen Ernsting, Herbert Kuchen (bib0045) 2012; 7
Bo Joel Svensson (10.1016/j.procs.2016.05.477_bib0075) 2014; 12
Christopher Brown (10.1016/j.procs.2016.05.477_bib0015) 2014; 42
10.1016/j.procs.2016.05.477_bib0040
10.1016/j.procs.2016.05.477_bib0020
Steffen Ernsting (10.1016/j.procs.2016.05.477_bib0045) 2012; 7
10.1016/j.procs.2016.05.477_bib0030
10.1016/j.procs.2016.05.477_bib0080
Christopher Earl (10.1016/j.procs.2016.05.477_bib0035) 2016
10.1016/j.procs.2016.05.477_bib0060
10.1016/j.procs.2016.05.477_bib0025
10.1016/j.procs.2016.05.477_bib0005
10.1016/j.procs.2016.05.477_bib0055
10.1016/j.procs.2016.05.477_bib0010
10.1016/j.procs.2016.05.477_bib0065
Arvind (10.1016/j.procs.2016.05.477_bib0070) 2014; 13
Horacio González-Vélez (10.1016/j.procs.2016.05.477_bib0050) 2010; 40
References_xml – reference: Timothy Mattson, Beverly Sanders, and Berna Massingill.
– reference: , pages 29-75. Springer International Publishing, 2015.
– reference: Dalvan Griebler and Luiz Gustavo Fernandes. Towards a domain-specific language for patterns- oriented parallel programming. In André Rauber Du Bois and Phil Trinder, editors,
– reference: , volume 8129 of
– reference: Yuan Tang, Rezaul Alam Chowdhury, Bradley C. Kuszmaul, Chi-Keung Luk, and Charles E. Leiserson. The pochoir stencil compiler. In
– reference: Marco Aldinucci and Marco Danelutto. Stream parallel skeleton optimization. In
– volume: 42
  start-page: 564
  year: 2014
  end-page: 582
  ident: bib0015
  article-title: Cost-directed refactoring for parallel erlang programs
  publication-title: International Journal of Parallel Programming
– reference: Johan Enmyren and Christoph W. Kessler. Skepu: A multi-backend skeleton programming library for multi-gpu systems. In
– reference: . Addison-Wesley Professional, first edition, 2004.
– volume: 40
  start-page: 1135
  year: 2010
  end-page: 1160
  ident: bib0050
  article-title: A survey of algorithmic skeleton frameworks: High- level structured parallel programming enablers
  publication-title: Softw. Pract. Exper.
– volume: 7
  start-page: 129
  year: 2012
  end-page: 138
  ident: bib0045
  article-title: Algorithmic skeletons for multi-core, multi-gpu systems and clusters
  publication-title: IJHPCN
– reference: , HLPP ‘10, pages 5-14, New York, NY, USA, 2010. ACM.
– reference: , ASE ‘14, pages 289-300, New York, NY, USA, 2014. ACM.
– reference: , volume 8606 of
– reference: Marco Danelutto, Massimo Torquati, and Peter Kilpatrick. State access patterns in embarrassingly parallel computations. In Proc. of the HLPGPU 2016 Workshop, HiPEAC 2016, Prague, 2016.
– reference: , ASPLOS ‘15, pages 429-443, New York, NY, USA, 2015. ACM.
– reference: , PLDI ‘12, pages 111-120, New York, NY, USA, 2012. ACM.
– volume: 12
  year: April 2014
  ident: bib0075
  article-title: Design exploration through code-generating dsls
  publication-title: Queue
– year: 2016
  ident: bib0035
  article-title: Nebo: An efficient, parallel and portable domain-specific language for numerically solving partial differential equations
  publication-title: Journal of Systems and Software
– reference: , pages 955-962. IASTED/ACTA press, 1999.
– reference: Ravi Teja Mullapudi, Vinay Vasista, and Uday Bondhugula. Polymage: Automatic optimization for image processing pipelines. In
– reference: , SPAA ‘11, pages 117-128, New York, NY, USA, 2011. ACM.
– reference: , pages 105-119. Springer Berlin Heidelberg, 2013.
– reference: Hani Abdeen, Dániel Varró, Houari Sahraoui, András Szabolcs Nagy, Csaba Debreceni, Ábel Hegedüs, and Ákos Horváth. Multi-objective optimization in rule-based design space exploration. In
– reference: Charisee Chiw, Gordon Kindlmann, John Reppy, Lamont Samuels, and Nick Seltzer. Diderot: A parallel dsl for image analysis and visualization. In
– volume: 13
  year: April 2014
  ident: bib0070
  article-title: Delite: A compiler architecture for performance-oriented embedded domain- specific languages
  publication-title: ACM Trans. Embed. Comput. Syst.
– reference: Marco Danelutto and Massimo Torquati. Structured parallel programming with core fastflow. In Viktria Zsk, Zoltn Horvth, and Lehel Csat, editors,
– ident: 10.1016/j.procs.2016.05.477_bib0025
  doi: 10.1007/978-3-319-15940-9_2
– ident: 10.1016/j.procs.2016.05.477_bib0020
  doi: 10.1145/2254064.2254079
– ident: 10.1016/j.procs.2016.05.477_bib0005
  doi: 10.1145/2642937.2643005
– volume: 40
  start-page: 1135
  issue: 12
  year: 2010
  ident: 10.1016/j.procs.2016.05.477_bib0050
  article-title: A survey of algorithmic skeleton frameworks: High- level structured parallel programming enablers
  publication-title: Softw. Pract. Exper.
  doi: 10.1002/spe.1026
– ident: 10.1016/j.procs.2016.05.477_bib0030
– volume: 7
  start-page: 129
  issue: 2
  year: 2012
  ident: 10.1016/j.procs.2016.05.477_bib0045
  article-title: Algorithmic skeletons for multi-core, multi-gpu systems and clusters
  publication-title: IJHPCN
  doi: 10.1504/IJHPCN.2012.046370
– ident: 10.1016/j.procs.2016.05.477_bib0040
  doi: 10.1145/1863482.1863487
– ident: 10.1016/j.procs.2016.05.477_bib0055
  doi: 10.1007/978-3-642-40922-6_8
– ident: 10.1016/j.procs.2016.05.477_bib0080
  doi: 10.1145/1989493.1989508
– year: 2016
  ident: 10.1016/j.procs.2016.05.477_bib0035
  article-title: Nebo: An efficient, parallel and portable domain-specific language for numerically solving partial differential equations
  publication-title: Journal of Systems and Software
– ident: 10.1016/j.procs.2016.05.477_bib0065
  doi: 10.1145/2694344.2694364
– ident: 10.1016/j.procs.2016.05.477_bib0010
– volume: 42
  start-page: 564
  issue: 4
  year: 2014
  ident: 10.1016/j.procs.2016.05.477_bib0015
  article-title: Cost-directed refactoring for parallel erlang programs
  publication-title: International Journal of Parallel Programming
  doi: 10.1007/s10766-013-0266-5
– volume: 12
  issue: 4
  year: 2014
  ident: 10.1016/j.procs.2016.05.477_bib0075
  article-title: Design exploration through code-generating dsls
  publication-title: Queue
– ident: 10.1016/j.procs.2016.05.477_bib0060
– volume: 13
  issue: 4s
  year: 2014
  ident: 10.1016/j.procs.2016.05.477_bib0070
  article-title: Delite: A compiler architecture for performance-oriented embedded domain- specific languages
  publication-title: ACM Trans. Embed. Comput. Syst.
SSID ssj0000388917
Score 2.037218
Snippet We introduce a DSL based toolchain supporting the design of parallel applications where parallelism is structured after parallel design pattern compositions. A...
SourceID crossref
elsevier
SourceType Enrichment Source
Index Database
Publisher
StartPage 1519
SubjectTerms design space exploration
DSL
non-functional concerns
parallel design patterns
Title A DSL Based Toolchain for Design Space Exploration in Structured Parallel Programming
URI https://dx.doi.org/10.1016/j.procs.2016.05.477
Volume 80
WOSCitedRecordID wos000579452200143&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: PRVHPJ
  databaseName: ROAD: Directory of Open Access Scholarly Resources
  customDbUrl:
  eissn: 1877-0509
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssj0000388917
  issn: 1877-0509
  databaseCode: M~E
  dateStart: 20100101
  isFulltext: true
  titleUrlDefault: https://road.issn.org
  providerName: ISSN International Centre
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV1Lb9NAEF6FwoELb0TLQ3vgZiw56_U-joGCkChVpbSoN8tee0Vb1wmhjXritzOzDydVowqQuFjJbpxNdj7PzI5m5iPkbV0YLpXBEuUxS7lsRKrBsU-VskLmWLroKuS-7cn9fXV8rA9Go2WshVl2su_V1ZWe_1dRwxgIG0tn_0Lcw5fCALwGocMVxA7XPxL8JNmd7iXvwTphksysM9_h8O-yCXddtkYyhWNym_jkuyrmOk5dH9lLzEY_qBZIsNJhEQHmbp1H6xZ8WFdbALBy6ejICJEEM7qKevct_ENH0ITFQGa2imUvfmBvcT8Bj-P5MPXlpJs7uoCz62nDISLhSyV9gOxGkYzTqUrKFNvMeJOzYSwoYk_pFDQpeCJ6zSqDYs42anwffDhFe2Ow_fpYYCdWHrhhrrfSnuKyuCo4oXB0Y9kdcpfJQiPlx9dfq9gcdsjRjqx5-J2xYZVLDbyx1manZs1ROXxEHoQTBp14ZDwmo7Z_Qh5G9g4alPlTcjShABTqgEIHoFAACvVAoQ4odA0oFOZXQKERKHQNKM_I0aePhx8-p4FkIzU5VxepVPXYFrbJmM2NFDyDp9eaJue61k1VVJlFJ7bR3AjdFIZpy2wxzgXXKgfrkOfPyVY_69sXhGaqKTJTNaw2nAsu6ka2HPvJWV1XqmLbhMVdKk3oQI9EKF0ZUw1PS7e1JW5tmRUlbO02eTfcNPcNWG7_uIjbXwbwe9-wBMDcduPOv974ktzHdz4s94psgRTa1-SeWV6c_Fy8ccD6DT01lxs
linkProvider ISSN International Centre
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=A+DSL+Based+Toolchain+for+Design+Space+Exploration+in+Structured+Parallel+Programming&rft.jtitle=Procedia+computer+science&rft.au=Danelutto%2C+Marco&rft.au=Torquati%2C+Massimo&rft.au=Kilpatrick%2C+Peter&rft.date=2016&rft.pub=Elsevier+B.V&rft.issn=1877-0509&rft.eissn=1877-0509&rft.volume=80&rft.spage=1519&rft.epage=1530&rft_id=info:doi/10.1016%2Fj.procs.2016.05.477&rft.externalDocID=S1877050916309620
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1877-0509&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1877-0509&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1877-0509&client=summon