{"id":"https://openalex.org/W2140131713","doi":"https://doi.org/10.1145/2688905","title":"Using Template Matching to Infer Parallel Design Patterns","display_name":"Using Template Matching to Infer Parallel Design Patterns","publication_year":2015,"publication_date":"2015-01-09","ids":{"openalex":"https://openalex.org/W2140131713","doi":"https://doi.org/10.1145/2688905","mag":"2140131713"},"language":"en","primary_location":{"id":"doi:10.1145/2688905","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2688905","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/2688905","source":{"id":"https://openalex.org/S26056741","display_name":"ACM Transactions on Architecture and Code Optimization","issn_l":"1544-3566","issn":["1544-3566","1544-3973"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Architecture and Code Optimization","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://dl.acm.org/doi/pdf/10.1145/2688905","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5088645546","display_name":"Zia Ul Huda","orcid":"https://orcid.org/0000-0002-2223-4452"},"institutions":[{"id":"https://openalex.org/I887968799","display_name":"RWTH Aachen University","ror":"https://ror.org/04xfq0f34","country_code":"DE","type":"education","lineage":["https://openalex.org/I887968799"]},{"id":"https://openalex.org/I4210106877","display_name":"German Research School for Simulation Sciences","ror":"https://ror.org/01trbq046","country_code":"DE","type":"education","lineage":["https://openalex.org/I4210106877"]}],"countries":["DE"],"is_corresponding":true,"raw_author_name":"Zia Ul Huda","raw_affiliation_strings":["German Research School for Simulation Sciences, RWTH Aachen University, Aachen Germany","German Research School for Simulation Sciences; RWTH Aachen University, Aachen, Germany"],"affiliations":[{"raw_affiliation_string":"German Research School for Simulation Sciences, RWTH Aachen University, Aachen Germany","institution_ids":["https://openalex.org/I4210106877","https://openalex.org/I887968799"]},{"raw_affiliation_string":"German Research School for Simulation Sciences; RWTH Aachen University, Aachen, Germany","institution_ids":["https://openalex.org/I4210106877","https://openalex.org/I887968799"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5079359777","display_name":"Ali Jannesari","orcid":"https://orcid.org/0000-0001-8672-5317"},"institutions":[{"id":"https://openalex.org/I887968799","display_name":"RWTH Aachen University","ror":"https://ror.org/04xfq0f34","country_code":"DE","type":"education","lineage":["https://openalex.org/I887968799"]},{"id":"https://openalex.org/I4210106877","display_name":"German Research School for Simulation Sciences","ror":"https://ror.org/01trbq046","country_code":"DE","type":"education","lineage":["https://openalex.org/I4210106877"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Ali Jannesari","raw_affiliation_strings":["German Research School for Simulation Sciences, RWTH Aachen University, Aachen Germany","German Research School for Simulation Sciences; RWTH Aachen University, Aachen, Germany"],"affiliations":[{"raw_affiliation_string":"German Research School for Simulation Sciences, RWTH Aachen University, Aachen Germany","institution_ids":["https://openalex.org/I4210106877","https://openalex.org/I887968799"]},{"raw_affiliation_string":"German Research School for Simulation Sciences; RWTH Aachen University, Aachen, Germany","institution_ids":["https://openalex.org/I4210106877","https://openalex.org/I887968799"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5018089961","display_name":"Felix Wolf","orcid":"https://orcid.org/0000-0001-6595-3599"},"institutions":[{"id":"https://openalex.org/I4210106877","display_name":"German Research School for Simulation Sciences","ror":"https://ror.org/01trbq046","country_code":"DE","type":"education","lineage":["https://openalex.org/I4210106877"]},{"id":"https://openalex.org/I887968799","display_name":"RWTH Aachen University","ror":"https://ror.org/04xfq0f34","country_code":"DE","type":"education","lineage":["https://openalex.org/I887968799"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Felix Wolf","raw_affiliation_strings":["German Research School for Simulation Sciences, RWTH Aachen University, Aachen Germany","German Research School for Simulation Sciences; RWTH Aachen University, Aachen, Germany"],"affiliations":[{"raw_affiliation_string":"German Research School for Simulation Sciences, RWTH Aachen University, Aachen Germany","institution_ids":["https://openalex.org/I4210106877","https://openalex.org/I887968799"]},{"raw_affiliation_string":"German Research School for Simulation Sciences; RWTH Aachen University, Aachen, Germany","institution_ids":["https://openalex.org/I4210106877","https://openalex.org/I887968799"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5088645546"],"corresponding_institution_ids":["https://openalex.org/I4210106877","https://openalex.org/I887968799"],"apc_list":null,"apc_paid":null,"fwci":3.2298,"has_fulltext":true,"cited_by_count":20,"citation_normalized_percentile":{"value":0.92223123,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":97},"biblio":{"volume":"11","issue":"4","first_page":"1","last_page":"21"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9990000128746033,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.996999979019165,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.9151282906532288},{"id":"https://openalex.org/keywords/programmer","display_name":"Programmer","score":0.7957137823104858},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.6108642816543579},{"id":"https://openalex.org/keywords/pipeline","display_name":"Pipeline (software)","score":0.5222295522689819},{"id":"https://openalex.org/keywords/exploit","display_name":"Exploit","score":0.5205396413803101},{"id":"https://openalex.org/keywords/parallelism","display_name":"Parallelism (grammar)","score":0.5153095722198486},{"id":"https://openalex.org/keywords/pattern-matching","display_name":"Pattern matching","score":0.4661499261856079},{"id":"https://openalex.org/keywords/boosting","display_name":"Boosting (machine learning)","score":0.4588601589202881},{"id":"https://openalex.org/keywords/multi-core-processor","display_name":"Multi-core processor","score":0.45736581087112427},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.4438890218734741},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4245268702507019},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.39364519715309143},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.182030588388443}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.9151282906532288},{"id":"https://openalex.org/C2778514511","wikidata":"https://www.wikidata.org/wiki/Q1374194","display_name":"Programmer","level":2,"score":0.7957137823104858},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.6108642816543579},{"id":"https://openalex.org/C43521106","wikidata":"https://www.wikidata.org/wiki/Q2165493","display_name":"Pipeline (software)","level":2,"score":0.5222295522689819},{"id":"https://openalex.org/C165696696","wikidata":"https://www.wikidata.org/wiki/Q11287","display_name":"Exploit","level":2,"score":0.5205396413803101},{"id":"https://openalex.org/C2781172179","wikidata":"https://www.wikidata.org/wiki/Q853109","display_name":"Parallelism (grammar)","level":2,"score":0.5153095722198486},{"id":"https://openalex.org/C68859911","wikidata":"https://www.wikidata.org/wiki/Q1503724","display_name":"Pattern matching","level":2,"score":0.4661499261856079},{"id":"https://openalex.org/C46686674","wikidata":"https://www.wikidata.org/wiki/Q466303","display_name":"Boosting (machine learning)","level":2,"score":0.4588601589202881},{"id":"https://openalex.org/C78766204","wikidata":"https://www.wikidata.org/wiki/Q555032","display_name":"Multi-core processor","level":2,"score":0.45736581087112427},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.4438890218734741},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4245268702507019},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.39364519715309143},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.182030588388443},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/2688905","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2688905","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/2688905","source":{"id":"https://openalex.org/S26056741","display_name":"ACM Transactions on Architecture and Code Optimization","issn_l":"1544-3566","issn":["1544-3566","1544-3973"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Architecture and Code Optimization","raw_type":"journal-article"},{"id":"pmh:oai:tubiblio.ulb.tu-darmstadt.de:95651","is_oa":false,"landing_page_url":"http://tubiblio.ulb.tu-darmstadt.de/view/person/Ul-Huda=3AZia=3A=3A.html>","pdf_url":null,"source":{"id":"https://openalex.org/S4377196390","display_name":"TUbilio (Technical University of Darmstadt)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I31512782","host_organization_name":"Technische Universit\u00e4t Darmstadt","host_organization_lineage":["https://openalex.org/I31512782"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"acceptedVersion","is_accepted":true,"is_published":false,"raw_source_name":null,"raw_type":"PeerReviewed"}],"best_oa_location":{"id":"doi:10.1145/2688905","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2688905","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/2688905","source":{"id":"https://openalex.org/S26056741","display_name":"ACM Transactions on Architecture and Code Optimization","issn_l":"1544-3566","issn":["1544-3566","1544-3973"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Architecture and Code Optimization","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2140131713.pdf","grobid_xml":"https://content.openalex.org/works/W2140131713.grobid-xml"},"referenced_works_count":36,"referenced_works":["https://openalex.org/W35708471","https://openalex.org/W1494930385","https://openalex.org/W1578415644","https://openalex.org/W1649645444","https://openalex.org/W1965693583","https://openalex.org/W1976251241","https://openalex.org/W1976397984","https://openalex.org/W1986357930","https://openalex.org/W1987564528","https://openalex.org/W1990919222","https://openalex.org/W1991131529","https://openalex.org/W2014748196","https://openalex.org/W2016318856","https://openalex.org/W2021468834","https://openalex.org/W2028240990","https://openalex.org/W2042843190","https://openalex.org/W2056579078","https://openalex.org/W2090408221","https://openalex.org/W2093811859","https://openalex.org/W2100430002","https://openalex.org/W2112753598","https://openalex.org/W2115920894","https://openalex.org/W2134828100","https://openalex.org/W2153185479","https://openalex.org/W2153510998","https://openalex.org/W2153853754","https://openalex.org/W2155312437","https://openalex.org/W2159445660","https://openalex.org/W2159811471","https://openalex.org/W2163283517","https://openalex.org/W2167089275","https://openalex.org/W2175209623","https://openalex.org/W2916450216","https://openalex.org/W3004176791","https://openalex.org/W4230415451","https://openalex.org/W4244012835"],"related_works":["https://openalex.org/W3137189469","https://openalex.org/W2366027386","https://openalex.org/W4200630743","https://openalex.org/W4226219253","https://openalex.org/W2378666660","https://openalex.org/W2593142409","https://openalex.org/W3016212467","https://openalex.org/W1545342238","https://openalex.org/W2139085735","https://openalex.org/W1560916425"],"abstract_inverted_index":{"The":[0],"triumphant":[1],"spread":[2],"of":[3,21,39,70,79,90,115,142,150,173],"multicore":[4],"processors":[5],"over":[6],"the":[7,11,18,25,37,61,77,88,113,143,148,151,160,165],"past":[8],"decade":[9],"increases":[10],"pressure":[12],"on":[13,157],"software":[14,47],"developers":[15],"to":[16,54,94,123,147],"exploit":[17],"growing":[19],"amount":[20],"parallelism":[22],"available":[23],"in":[24,46,97,112,131,185],"hardware.":[26],"However,":[27],"writing":[28],"parallel":[29,71,92,152,171],"programs":[30],"is":[31,63],"generally":[32],"challenging.":[33],"For":[34],"sequential":[35,83,116],"programs,":[36,184],"formulation":[38],"design":[40,72,117],"patterns":[41,153],"marked":[42],"a":[43,67,108,132,170],"turning":[44],"point":[45],"development,":[48],"boosting":[49],"programmer":[50,161],"productivity":[51],"and":[52,57,168,191],"leading":[53],"more":[55],"reusable":[56],"maintainable":[58],"code.":[59,99],"While":[60],"literature":[62],"now":[64],"also":[65,120],"reporting":[66],"rising":[68],"number":[69],"patterns,":[73,118],"programmers":[74],"confronted":[75],"with":[76,87,182],"task":[78],"parallelizing":[80],"an":[81],"existing":[82],"program":[84,145],"still":[85],"struggle":[86],"question":[89],"which":[91,186],"pattern":[93,167],"apply":[95],"where":[96],"their":[98],"In":[100],"this":[101,158],"article,":[102],"we":[103,138,154,187],"show":[104],"how":[105],"template":[106],"matching,":[107],"technique":[109],"traditionally":[110],"used":[111,122],"discovery":[114],"can":[119,162],"be":[121],"support":[124],"parallelization":[125],"decisions.":[126],"After":[127],"looking":[128],"for":[129],"matches":[130],"previously":[133],"extracted":[134],"dynamic":[135],"dependence":[136],"graph,":[137],"classify":[139],"code":[140],"blocks":[141],"input":[144],"according":[146],"structure":[149],"find.":[155],"Based":[156],"information,":[159],"easily":[163],"implement":[164],"detected":[166,189],"create":[169],"version":[172],"his":[174],"or":[175],"her":[176],"program.":[177],"We":[178],"tested":[179],"our":[180],"approach":[181],"six":[183],"successfully":[188],"pipeline":[190],"do-all":[192],"patterns.":[193]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":1},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":3},{"year":2017,"cited_by_count":2},{"year":2016,"cited_by_count":3},{"year":2015,"cited_by_count":2}],"updated_date":"2026-02-26T08:16:20.718346","created_date":"2025-10-10T00:00:00"}
