{"id":"https://openalex.org/W2254951850","doi":"https://doi.org/10.1145/2858650","title":"Well-Structured Futures and Cache Locality","display_name":"Well-Structured Futures and Cache Locality","publication_year":2016,"publication_date":"2016-02-09","ids":{"openalex":"https://openalex.org/W2254951850","doi":"https://doi.org/10.1145/2858650","mag":"2254951850"},"language":"en","primary_location":{"id":"doi:10.1145/2858650","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2858650","pdf_url":null,"source":{"id":"https://openalex.org/S2483380313","display_name":"ACM Transactions on Parallel Computing","issn_l":"2329-4949","issn":["2329-4949","2329-4957"],"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 Parallel Computing","raw_type":"journal-article"},"type":"article","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/A5086347882","display_name":"Maurice Herlihy","orcid":"https://orcid.org/0000-0002-3059-8926"},"institutions":[{"id":"https://openalex.org/I27804330","display_name":"Brown University","ror":"https://ror.org/05gq02987","country_code":"US","type":"education","lineage":["https://openalex.org/I27804330"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Maurice Herlihy","raw_affiliation_strings":["Brown University, Rhode Island, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Brown University, Rhode Island, USA","institution_ids":["https://openalex.org/I27804330"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5100400416","display_name":"Zhiyu Liu","orcid":"https://orcid.org/0000-0002-0311-2089"},"institutions":[{"id":"https://openalex.org/I27804330","display_name":"Brown University","ror":"https://ror.org/05gq02987","country_code":"US","type":"education","lineage":["https://openalex.org/I27804330"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Zhiyu Liu","raw_affiliation_strings":["Brown University, Rhode Island, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Brown University, Rhode Island, USA","institution_ids":["https://openalex.org/I27804330"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I27804330"],"apc_list":null,"apc_paid":null,"fwci":0.6248,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.64710852,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":96},"biblio":{"volume":"2","issue":"4","first_page":"1","last_page":"20"},"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/T10715","display_name":"Distributed and Parallel Computing Systems","score":0.9990000128746033,"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"}},{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":0.9984999895095825,"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/parallel-computing","display_name":"Parallel computing","score":0.8559736013412476},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8436679840087891},{"id":"https://openalex.org/keywords/locality","display_name":"Locality","score":0.7191752791404724},{"id":"https://openalex.org/keywords/cache","display_name":"Cache","score":0.7133682370185852},{"id":"https://openalex.org/keywords/thread","display_name":"Thread (computing)","score":0.6766353249549866},{"id":"https://openalex.org/keywords/futures-contract","display_name":"Futures contract","score":0.5816786289215088},{"id":"https://openalex.org/keywords/instruction-level-parallelism","display_name":"Instruction-level parallelism","score":0.504531979560852},{"id":"https://openalex.org/keywords/task-parallelism","display_name":"Task parallelism","score":0.5030471682548523},{"id":"https://openalex.org/keywords/computation","display_name":"Computation","score":0.4367069602012634},{"id":"https://openalex.org/keywords/parallelism","display_name":"Parallelism (grammar)","score":0.4093257188796997},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.2069549262523651},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.19588804244995117}],"concepts":[{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.8559736013412476},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8436679840087891},{"id":"https://openalex.org/C2779808786","wikidata":"https://www.wikidata.org/wiki/Q6664603","display_name":"Locality","level":2,"score":0.7191752791404724},{"id":"https://openalex.org/C115537543","wikidata":"https://www.wikidata.org/wiki/Q165596","display_name":"Cache","level":2,"score":0.7133682370185852},{"id":"https://openalex.org/C138101251","wikidata":"https://www.wikidata.org/wiki/Q213092","display_name":"Thread (computing)","level":2,"score":0.6766353249549866},{"id":"https://openalex.org/C106306483","wikidata":"https://www.wikidata.org/wiki/Q183984","display_name":"Futures contract","level":2,"score":0.5816786289215088},{"id":"https://openalex.org/C140763907","wikidata":"https://www.wikidata.org/wiki/Q2714055","display_name":"Instruction-level parallelism","level":3,"score":0.504531979560852},{"id":"https://openalex.org/C42992933","wikidata":"https://www.wikidata.org/wiki/Q691169","display_name":"Task parallelism","level":3,"score":0.5030471682548523},{"id":"https://openalex.org/C45374587","wikidata":"https://www.wikidata.org/wiki/Q12525525","display_name":"Computation","level":2,"score":0.4367069602012634},{"id":"https://openalex.org/C2781172179","wikidata":"https://www.wikidata.org/wiki/Q853109","display_name":"Parallelism (grammar)","level":2,"score":0.4093257188796997},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.2069549262523651},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.19588804244995117},{"id":"https://openalex.org/C162324750","wikidata":"https://www.wikidata.org/wiki/Q8134","display_name":"Economics","level":0,"score":0.0},{"id":"https://openalex.org/C106159729","wikidata":"https://www.wikidata.org/wiki/Q2294553","display_name":"Financial economics","level":1,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2858650","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2858650","pdf_url":null,"source":{"id":"https://openalex.org/S2483380313","display_name":"ACM Transactions on Parallel Computing","issn_l":"2329-4949","issn":["2329-4949","2329-4957"],"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 Parallel Computing","raw_type":"journal-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":23,"referenced_works":["https://openalex.org/W1968020161","https://openalex.org/W1983587324","https://openalex.org/W1986804682","https://openalex.org/W1993621349","https://openalex.org/W1999241319","https://openalex.org/W2009122662","https://openalex.org/W2016559894","https://openalex.org/W2034896142","https://openalex.org/W2044872254","https://openalex.org/W2054983537","https://openalex.org/W2072725684","https://openalex.org/W2090247159","https://openalex.org/W2091782827","https://openalex.org/W2098147619","https://openalex.org/W2104861744","https://openalex.org/W2107766104","https://openalex.org/W2124404374","https://openalex.org/W2128294826","https://openalex.org/W2156693493","https://openalex.org/W2159811471","https://openalex.org/W2165100134","https://openalex.org/W2436525433","https://openalex.org/W4244257941"],"related_works":["https://openalex.org/W2003935582","https://openalex.org/W2950520577","https://openalex.org/W2009213655","https://openalex.org/W1638215063","https://openalex.org/W1229628","https://openalex.org/W2105992728","https://openalex.org/W74409296","https://openalex.org/W305742777","https://openalex.org/W2468095077","https://openalex.org/W3104857564"],"abstract_inverted_index":{"In":[0,115,187],"fork-join":[1,42],"parallelism,":[2],"a":[3,9,54,61,103,109,174,198,224],"sequential":[4],"program":[5],"is":[6,44,74,88,145,152,158,166,185,205,211,259],"split":[7],"into":[8],"directed":[10,17],"acyclic":[11],"graph":[12],"of":[13,60,98,148,155,161,227,257,261],"tasks":[14,22],"linked":[15],"by":[16,216,223],"dependency":[18],"edges,":[19],"and":[20,37,163],"the":[21,58,86,116,146,153,159,167,203,217,228],"are":[23,195],"executed,":[24],"possibly":[25],"in":[26,28,70,102,197],"parallel,":[27],"an":[29],"order":[30],"consistent":[31],"with":[32,236],"their":[33],"dependencies.":[34],"A":[35,51],"popular":[36],"effective":[38],"way":[39],"to":[40,45,48,56],"extend":[41],"parallelism":[43,101],"allow":[46],"threads":[47],"create":[49],"futures.":[50],"thread":[52,78,218,229],"creates":[53],"future":[55,210],"hold":[57],"results":[59],"computation,":[62],"which":[63,130],"may":[64,66],"or":[65,222],"not":[67,264],"be":[68],"executed":[69],"parallel.":[71],"That":[72],"result":[73,87,184],"returned":[75],"when":[76],"some":[77],"touches":[79],"that":[80,94,192,219,230],"future,":[81],"blocking":[82],"if":[83,193,208],"necessary":[84],"until":[85],"ready.":[89],"Recent":[90],"research":[91],"has":[92,173],"shown":[93],"although":[95],"futures":[96,119,194,258],"can,":[97],"course,":[99],"enhance":[100],"structured":[104,255],"way,":[105,201],"they":[106],"can":[107,120,239],"have":[108],"deleterious":[110],"effect":[111],"on":[112,177,180],"cache":[113,141,149,171,250],"locality.":[114],"worst":[117],"case,":[118],"incur":[121,240],"\u03a9(":[122],"PT":[123],"\u221e":[124,127,135,138,165,247],"+":[125,136],"tT":[126],")":[128,139,248],"deviations,":[129],"implies":[131],"\u03a9":[132],"(":[133,244],"CPT":[134,245],"CtT":[137],"additional":[140,249],"misses,":[142],"where":[143],"C":[144],"number":[147,154,160],"lines,":[150],"P":[151],"processors,":[156],"t":[157],"touches,":[162],"T":[164],"computation":[168],"span.":[169],"Since":[170],"locality":[172],"large":[175],"impact":[176],"software":[178],"performance":[179],"modern":[181],"multicores,":[182],"this":[183,188],"troubling.":[186],"article,":[189],"we":[190],"show":[191],"used":[196],"simple,":[199],"disciplined":[200],"then":[202,233],"situation":[204],"much":[206],"better:":[207],"each":[209],"touched":[212],"only":[213],"once,":[214],"either":[215],"created":[220,231],"it":[221],"later":[225],"descendant":[226],"it,":[232],"parallel":[234,266],"executions":[235],"work":[237],"stealing":[238],"at":[241],"most":[242],"O":[243],"2":[246],"misses\u2014a":[251],"substantial":[252],"improvement.":[253],"This":[254],"use":[256],"characteristic":[260],"many":[262],"(but":[263],"all)":[265],"applications.":[267]},"counts_by_year":[{"year":2020,"cited_by_count":1},{"year":2016,"cited_by_count":2}],"updated_date":"2026-05-21T06:26:12.895304","created_date":"2025-10-10T00:00:00"}
