{"id":"https://openalex.org/W2881446814","doi":"https://doi.org/10.1145/3236790","title":"Competitive parallelism: getting your priorities right","display_name":"Competitive parallelism: getting your priorities right","publication_year":2018,"publication_date":"2018-07-30","ids":{"openalex":"https://openalex.org/W2881446814","doi":"https://doi.org/10.1145/3236790","mag":"2881446814"},"language":"en","primary_location":{"id":"doi:10.1145/3236790","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3236790","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3236790","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"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":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"type":"preprint","indexed_in":["arxiv","crossref","datacite"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3236790","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5009393339","display_name":"Stefan K. Muller","orcid":"https://orcid.org/0000-0002-3210-9727"},"institutions":[{"id":"https://openalex.org/I74973139","display_name":"Carnegie Mellon University","ror":"https://ror.org/05x2bcf33","country_code":"US","type":"education","lineage":["https://openalex.org/I74973139"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Stefan K. Muller","raw_affiliation_strings":["Carnegie Mellon University, USA","Carnegie -Mellon University, USA"],"affiliations":[{"raw_affiliation_string":"Carnegie Mellon University, USA","institution_ids":["https://openalex.org/I74973139"]},{"raw_affiliation_string":"Carnegie -Mellon University, USA","institution_ids":["https://openalex.org/I74973139"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5015051107","display_name":"Umut A. Acar","orcid":"https://orcid.org/0000-0002-2623-4986"},"institutions":[{"id":"https://openalex.org/I74973139","display_name":"Carnegie Mellon University","ror":"https://ror.org/05x2bcf33","country_code":"US","type":"education","lineage":["https://openalex.org/I74973139"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Umut A. Acar","raw_affiliation_strings":["Carnegie Mellon University, USA / Inria, France"],"affiliations":[{"raw_affiliation_string":"Carnegie Mellon University, USA / Inria, France","institution_ids":["https://openalex.org/I74973139"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5028720578","display_name":"Robert Harper","orcid":"https://orcid.org/0000-0002-9400-2941"},"institutions":[{"id":"https://openalex.org/I74973139","display_name":"Carnegie Mellon University","ror":"https://ror.org/05x2bcf33","country_code":"US","type":"education","lineage":["https://openalex.org/I74973139"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Robert Harper","raw_affiliation_strings":["Carnegie Mellon University, USA","Carnegie -Mellon University, USA"],"affiliations":[{"raw_affiliation_string":"Carnegie Mellon University, USA","institution_ids":["https://openalex.org/I74973139"]},{"raw_affiliation_string":"Carnegie -Mellon University, USA","institution_ids":["https://openalex.org/I74973139"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5009393339"],"corresponding_institution_ids":["https://openalex.org/I74973139"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":true,"cited_by_count":0,"citation_normalized_percentile":{"value":0.09185322,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"2","issue":"ICFP","first_page":"1","last_page":"30"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":1.0,"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":1.0,"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/T10126","display_name":"Logic, programming, and type systems","score":0.9976000189781189,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"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/T10715","display_name":"Distributed and Parallel Computing Systems","score":0.9973000288009644,"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.84633469581604},{"id":"https://openalex.org/keywords/programmer","display_name":"Programmer","score":0.5497147440910339},{"id":"https://openalex.org/keywords/scheduling","display_name":"Scheduling (production processes)","score":0.5349859595298767},{"id":"https://openalex.org/keywords/multithreading","display_name":"Multithreading","score":0.5079763531684875},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.4966002106666565},{"id":"https://openalex.org/keywords/disjoint-sets","display_name":"Disjoint sets","score":0.48731884360313416},{"id":"https://openalex.org/keywords/threading","display_name":"Threading (protein sequence)","score":0.4790736138820648},{"id":"https://openalex.org/keywords/synchronizing","display_name":"Synchronizing","score":0.47538864612579346},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.3540661334991455},{"id":"https://openalex.org/keywords/thread","display_name":"Thread (computing)","score":0.3264591097831726},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.30293434858322144}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.84633469581604},{"id":"https://openalex.org/C2778514511","wikidata":"https://www.wikidata.org/wiki/Q1374194","display_name":"Programmer","level":2,"score":0.5497147440910339},{"id":"https://openalex.org/C206729178","wikidata":"https://www.wikidata.org/wiki/Q2271896","display_name":"Scheduling (production processes)","level":2,"score":0.5349859595298767},{"id":"https://openalex.org/C201410400","wikidata":"https://www.wikidata.org/wiki/Q1064412","display_name":"Multithreading","level":3,"score":0.5079763531684875},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.4966002106666565},{"id":"https://openalex.org/C45340560","wikidata":"https://www.wikidata.org/wiki/Q215382","display_name":"Disjoint sets","level":2,"score":0.48731884360313416},{"id":"https://openalex.org/C200307862","wikidata":"https://www.wikidata.org/wiki/Q7797175","display_name":"Threading (protein sequence)","level":3,"score":0.4790736138820648},{"id":"https://openalex.org/C162932704","wikidata":"https://www.wikidata.org/wiki/Q1058791","display_name":"Synchronizing","level":3,"score":0.47538864612579346},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.3540661334991455},{"id":"https://openalex.org/C138101251","wikidata":"https://www.wikidata.org/wiki/Q213092","display_name":"Thread (computing)","level":2,"score":0.3264591097831726},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.30293434858322144},{"id":"https://openalex.org/C76155785","wikidata":"https://www.wikidata.org/wiki/Q418","display_name":"Telecommunications","level":1,"score":0.0},{"id":"https://openalex.org/C162324750","wikidata":"https://www.wikidata.org/wiki/Q8134","display_name":"Economics","level":0,"score":0.0},{"id":"https://openalex.org/C21547014","wikidata":"https://www.wikidata.org/wiki/Q1423657","display_name":"Operations management","level":1,"score":0.0},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","level":1,"score":0.0},{"id":"https://openalex.org/C121332964","wikidata":"https://www.wikidata.org/wiki/Q413","display_name":"Physics","level":0,"score":0.0},{"id":"https://openalex.org/C46141821","wikidata":"https://www.wikidata.org/wiki/Q209402","display_name":"Nuclear magnetic resonance","level":1,"score":0.0},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0},{"id":"https://openalex.org/C761482","wikidata":"https://www.wikidata.org/wiki/Q118093","display_name":"Transmission (telecommunications)","level":2,"score":0.0},{"id":"https://openalex.org/C47701112","wikidata":"https://www.wikidata.org/wiki/Q735188","display_name":"Protein structure","level":2,"score":0.0}],"mesh":[],"locations_count":4,"locations":[{"id":"doi:10.1145/3236790","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3236790","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3236790","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"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":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},{"id":"pmh:oai:arXiv.org:1807.03703","is_oa":true,"landing_page_url":"http://arxiv.org/abs/1807.03703","pdf_url":"https://arxiv.org/pdf/1807.03703","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"text"},{"id":"mag:2881446814","is_oa":true,"landing_page_url":"https://arxiv.org/pdf/1807.03703.pdf","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"arXiv (Cornell University)","raw_type":null},{"id":"doi:10.48550/arxiv.1807.03703","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.1807.03703","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":"article"}],"best_oa_location":{"id":"doi:10.1145/3236790","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3236790","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3236790","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"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":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G5921281487","display_name":null,"funder_award_id":"number","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G7010669580","display_name":null,"funder_award_id":"1629444","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G848032724","display_name":null,"funder_award_id":"Science","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G8803023401","display_name":null,"funder_award_id":"CCF-1629444","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2881446814.pdf","grobid_xml":"https://content.openalex.org/works/W2881446814.grobid-xml"},"referenced_works_count":35,"referenced_works":["https://openalex.org/W220713430","https://openalex.org/W1495087637","https://openalex.org/W1521539325","https://openalex.org/W1525370593","https://openalex.org/W1567423028","https://openalex.org/W1965122136","https://openalex.org/W1983587324","https://openalex.org/W1988824860","https://openalex.org/W1994257154","https://openalex.org/W2007271812","https://openalex.org/W2007911006","https://openalex.org/W2019380637","https://openalex.org/W2019565705","https://openalex.org/W2022185456","https://openalex.org/W2024929322","https://openalex.org/W2051600983","https://openalex.org/W2056714230","https://openalex.org/W2057069923","https://openalex.org/W2057392949","https://openalex.org/W2065413511","https://openalex.org/W2072725684","https://openalex.org/W2087747577","https://openalex.org/W2091941856","https://openalex.org/W2109065830","https://openalex.org/W2129494270","https://openalex.org/W2130566259","https://openalex.org/W2134291411","https://openalex.org/W2135490589","https://openalex.org/W2148599839","https://openalex.org/W2150848984","https://openalex.org/W2472681217","https://openalex.org/W2489156759","https://openalex.org/W2508222108","https://openalex.org/W2624869780","https://openalex.org/W4231827376"],"related_works":["https://openalex.org/W3033203490","https://openalex.org/W2902696731","https://openalex.org/W2081253933","https://openalex.org/W2109515201","https://openalex.org/W2156605713","https://openalex.org/W2001112841","https://openalex.org/W2116134496","https://openalex.org/W2256465061","https://openalex.org/W2298879845","https://openalex.org/W2173810592","https://openalex.org/W3007668436","https://openalex.org/W2005739337","https://openalex.org/W1569450356","https://openalex.org/W3114438252","https://openalex.org/W2478638223","https://openalex.org/W2399449587","https://openalex.org/W3159610252","https://openalex.org/W2080811083","https://openalex.org/W2512132806","https://openalex.org/W2510617510"],"abstract_inverted_index":{"Multi-threaded":[0],"programs":[1,114],"have":[2,16],"traditionally":[3,17],"fallen":[4],"into":[5],"one":[6],"of":[7,162,179],"two":[8,14,63],"domains:":[9],"cooperative":[10,22,36,78,100,191],"and":[11,35,48,71,73,79,90,101,117,123,128,176],"competitive.":[12],"These":[13],"domains":[15],"remained":[18],"mostly":[19],"disjoint,":[20],"with":[21,119],"threading":[23,37,192],"used":[24,38],"for":[25,39,60,88,190,195],"increasing":[26,40],"throughput":[27],"in":[28,42],"compute-intensive":[29],"applications":[30,44,68,95],"such":[31,45],"as":[32,46,121,215],"scientific":[33],"workloads":[34],"responsiveness":[41,135,175],"interactive":[43,94,113],"GUIs":[47],"games.":[49],"As":[50],"multicore":[51],"hardware":[52],"becomes":[53],"increasingly":[54],"mainstream,":[55],"there":[56],"is":[57],"a":[58,139,159,168],"need":[59],"bridging":[61],"these":[62],"disjoint":[64],"worlds,":[65],"because":[66],"many":[67],"mix":[69],"interaction":[70],"computation":[72],"would":[74],"benefit":[75],"from":[76,152],"both":[77,99],"competitive":[80,102,196],"threading.":[81,103],"In":[82],"this":[83],"paper,":[84],"we":[85,137,204],"present":[86,138,167],"techniques":[87,105,209],"programming":[89],"reasoning":[91,173],"about":[92,174],"parallel":[93,112],"that":[96,148,171,206],"can":[97],"use":[98],"Our":[104],"enable":[106],"the":[107,186,219],"programmer":[108],"to":[109,144,193,200,218],"write":[110],"rich":[111],"by":[115,124,212],"creating":[116],"synchronizing":[118],"threads":[120,126,151],"needed,":[122],"assigning":[125],"user-defined":[127],"partially":[129],"ordered":[130],"priorities.":[131],"To":[132],"ensure":[133,201],"important":[134],"properties,":[136],"modal":[140,146],"type":[141],"system":[142],"analogous":[143],"S4":[145],"logic":[147],"precludes":[149],"low-priority":[150],"delaying":[153],"high-priority":[154],"threads,":[155],"thereby":[156],"statically":[157],"preventing":[158],"crucial":[160],"set":[161],"priority-inversion":[163],"bugs.":[164],"We":[165],"then":[166],"cost":[169,183],"model":[170,184,189],"allows":[172],"completion":[177],"time":[178],"well-typed":[180],"programs.":[181],"The":[182],"extends":[185],"traditional":[187],"work-span":[188],"account":[194],"scheduling":[197],"decisions":[198],"needed":[199],"responsiveness.":[202],"Finally,":[203],"show":[205],"our":[207],"proposed":[208],"are":[210],"realistic":[211],"implementing":[213],"them":[214],"an":[216],"extension":[217],"Standard":[220],"ML":[221],"language.":[222]},"counts_by_year":[],"updated_date":"2026-04-10T15:06:20.359241","created_date":"2025-10-10T00:00:00"}
