{"id":"https://openalex.org/W2012051687","doi":"https://doi.org/10.1145/2597917.2597923","title":"Towards a new tuple-based programming paradigm for expressing and optimizing irregular parallel computations","display_name":"Towards a new tuple-based programming paradigm for expressing and optimizing irregular parallel computations","publication_year":2014,"publication_date":"2014-05-20","ids":{"openalex":"https://openalex.org/W2012051687","doi":"https://doi.org/10.1145/2597917.2597923","mag":"2012051687"},"language":"en","primary_location":{"id":"doi:10.1145/2597917.2597923","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2597917.2597923","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 11th ACM Conference on Computing Frontiers","raw_type":"proceedings-article"},"type":"conference-paper","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5074964009","display_name":"Kristian F. D. Rietveld","orcid":"https://orcid.org/0000-0003-0455-3430"},"institutions":[{"id":"https://openalex.org/I121797337","display_name":"Leiden University","ror":"https://ror.org/027bh9e22","country_code":"NL","type":"education","lineage":["https://openalex.org/I121797337"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Kristian F. D. Rietveld","raw_affiliation_strings":["LIACS, Leiden University, CA Leiden, The Netherlands","LIACS, Leiden University, CA, Leiden, The Netherlands#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"LIACS, Leiden University, CA Leiden, The Netherlands","institution_ids":["https://openalex.org/I121797337"]},{"raw_affiliation_string":"LIACS, Leiden University, CA, Leiden, The Netherlands#TAB#","institution_ids":["https://openalex.org/I121797337"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5081580568","display_name":"Harry A. G. Wijshoff","orcid":null},"institutions":[{"id":"https://openalex.org/I121797337","display_name":"Leiden University","ror":"https://ror.org/027bh9e22","country_code":"NL","type":"education","lineage":["https://openalex.org/I121797337"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Harry A. G. Wijshoff","raw_affiliation_strings":["LIACS, Leiden University, CA Leiden, The Netherlands","LIACS, Leiden University, CA, Leiden, The Netherlands#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"LIACS, Leiden University, CA Leiden, The Netherlands","institution_ids":["https://openalex.org/I121797337"]},{"raw_affiliation_string":"LIACS, Leiden University, CA, Leiden, The Netherlands#TAB#","institution_ids":["https://openalex.org/I121797337"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I121797337"],"apc_list":null,"apc_paid":null,"fwci":0.2015,"has_fulltext":false,"cited_by_count":2,"citation_normalized_percentile":{"value":0.35631755,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"10"},"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.9998999834060669,"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.9998999834060669,"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/T12326","display_name":"Network Packet Processing and Optimization","score":0.9965000152587891,"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/T10829","display_name":"Interconnection Networks and Systems","score":0.9957000017166138,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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.7942309975624084},{"id":"https://openalex.org/keywords/tuple","display_name":"Tuple","score":0.7825729250907898},{"id":"https://openalex.org/keywords/implementation","display_name":"Implementation","score":0.6596762537956238},{"id":"https://openalex.org/keywords/computation","display_name":"Computation","score":0.6170214414596558},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.5555393099784851},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5470141768455505},{"id":"https://openalex.org/keywords/graph","display_name":"Graph","score":0.44990265369415283},{"id":"https://openalex.org/keywords/linear-programming","display_name":"Linear programming","score":0.4464329779148102},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.4400777220726013},{"id":"https://openalex.org/keywords/data-structure","display_name":"Data structure","score":0.43670251965522766},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.4273568093776703},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3767735958099365},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.32649368047714233},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.2714770436286926},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.10323518514633179},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.08572778105735779}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7942309975624084},{"id":"https://openalex.org/C118930307","wikidata":"https://www.wikidata.org/wiki/Q600590","display_name":"Tuple","level":2,"score":0.7825729250907898},{"id":"https://openalex.org/C26713055","wikidata":"https://www.wikidata.org/wiki/Q245962","display_name":"Implementation","level":2,"score":0.6596762537956238},{"id":"https://openalex.org/C45374587","wikidata":"https://www.wikidata.org/wiki/Q12525525","display_name":"Computation","level":2,"score":0.6170214414596558},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.5555393099784851},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5470141768455505},{"id":"https://openalex.org/C132525143","wikidata":"https://www.wikidata.org/wiki/Q141488","display_name":"Graph","level":2,"score":0.44990265369415283},{"id":"https://openalex.org/C41045048","wikidata":"https://www.wikidata.org/wiki/Q202843","display_name":"Linear programming","level":2,"score":0.4464329779148102},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.4400777220726013},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.43670251965522766},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.4273568093776703},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3767735958099365},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.32649368047714233},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.2714770436286926},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.10323518514633179},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.08572778105735779},{"id":"https://openalex.org/C118615104","wikidata":"https://www.wikidata.org/wiki/Q121416","display_name":"Discrete mathematics","level":1,"score":0.0},{"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":1,"locations":[{"id":"doi:10.1145/2597917.2597923","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2597917.2597923","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 11th ACM Conference on Computing Frontiers","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":11,"referenced_works":["https://openalex.org/W1585509108","https://openalex.org/W2010418442","https://openalex.org/W2035080386","https://openalex.org/W2061799173","https://openalex.org/W2080090223","https://openalex.org/W2082533328","https://openalex.org/W2152506070","https://openalex.org/W2162436812","https://openalex.org/W2163041510","https://openalex.org/W2181846018","https://openalex.org/W4253299346"],"related_works":["https://openalex.org/W4245395944","https://openalex.org/W2143551613","https://openalex.org/W2138823233","https://openalex.org/W1979740464","https://openalex.org/W2143345456","https://openalex.org/W1789991335","https://openalex.org/W2562731034","https://openalex.org/W4315705795","https://openalex.org/W2101053337","https://openalex.org/W1870651561"],"abstract_inverted_index":{"Irregular":[0],"computations":[1,36,77],"have":[2,187],"the":[3,29,56,64,81,90,96,130,165,175,182,193,214],"inherent":[4],"property":[5],"of":[6,75,109,129,167,177,197,205,210],"being":[7,61],"hard":[8],"to":[9,37,121,133,207,213],"automatically":[10,87,150,169],"optimize":[11],"and":[12,126],"parallelize.":[13],"In":[14],"this":[15,31,69,100,110,198],"paper,":[16],"a":[17,54],"new":[18],"tuple-based":[19,91],"programming":[20,32,83,92],"paradigm":[21,33],"is":[22,102,112,172],"described":[23],"for":[24,79],"expressing":[25],"irregular":[26,35,76],"computations.":[27],"At":[28],"basis,":[30],"allows":[34],"be":[38,86,149,158],"specified":[39],"on":[40,49,114],"an":[41,127,141],"elementary":[42],"data":[43,51,58],"entry":[44],"(tuple)":[45],"level":[46],"rather":[47],"than":[48],"(complicated)":[50],"structures.":[52],"As":[53],"consequence":[55],"actual":[57],"structures":[59],"are":[60],"constructed":[62],"during":[63],"code":[65,97],"generation":[66],"phase.":[67],"Using":[68],"framework":[70],"not":[71],"only":[72,157],"current":[73],"implementations":[74,147,171,196],"in":[78,202],"instance":[80],"C":[82],"language":[84],"can":[85,148],"mapped":[88],"into":[89],"model,":[93],"but":[94],"also":[95],"generated":[98,151,170],"from":[99,140],"specification":[101],"competitive":[103],"with":[104,174],"hand-optimized":[105,178],"codes.":[106],"The":[107],"potential":[108],"approach":[111],"demonstrated":[113],"two":[115,206],"representative":[116],"applications:":[117],"sparse":[118,123],"triangular":[119,143,179],"solve":[120,144],"represent":[122,134],"linear":[124],"algebra":[125],"implementation":[128],"Bellman-Ford":[131,183],"algorithm":[132,184,199],"graph":[135],"algorithms.":[136],"We":[137,162],"demonstrate":[138],"that":[139,152,164,192],"ordinary":[142],"code,":[145],"parallelized":[146],"up":[153],"till":[154],"now":[155],"could":[156],"derived":[159,194],"by":[160],"hand.":[161],"show":[163,191],"performance":[166,176],"these":[168],"comparable":[173],"solvers.":[180],"For":[181],"initial":[185,215],"experiments":[186],"been":[188],"conducted":[189],"which":[190],"GPU":[195],"achieve":[200],"speedups":[201],"execution":[203],"time":[204],"four":[208],"orders":[209],"magnitude":[211],"compared":[212],"implementation.":[216]},"counts_by_year":[{"year":2019,"cited_by_count":1},{"year":2017,"cited_by_count":1}],"updated_date":"2026-07-30T17:31:21.811387","created_date":"2025-10-10T00:00:00"}
