{"id":"https://openalex.org/W3033603793","doi":"https://doi.org/10.1145/3385412.3386028","title":"SCAF: a speculation-aware collaborative dependence analysis framework","display_name":"SCAF: a speculation-aware collaborative dependence analysis framework","publication_year":2020,"publication_date":"2020-06-07","ids":{"openalex":"https://openalex.org/W3033603793","doi":"https://doi.org/10.1145/3385412.3386028","mag":"3033603793"},"language":"en","primary_location":{"id":"doi:10.1145/3385412.3386028","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3385412.3386028","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-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/A5042788966","display_name":"Sotiris Apostolakis","orcid":"https://orcid.org/0000-0003-4716-9332"},"institutions":[{"id":"https://openalex.org/I20089843","display_name":"Princeton University","ror":"https://ror.org/00hx57361","country_code":"US","type":"education","lineage":["https://openalex.org/I20089843"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Sotiris Apostolakis","raw_affiliation_strings":["Princeton University, USA"],"affiliations":[{"raw_affiliation_string":"Princeton University, USA","institution_ids":["https://openalex.org/I20089843"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5012700366","display_name":"Ziyang Xu","orcid":"https://orcid.org/0000-0002-8297-7573"},"institutions":[{"id":"https://openalex.org/I20089843","display_name":"Princeton University","ror":"https://ror.org/00hx57361","country_code":"US","type":"education","lineage":["https://openalex.org/I20089843"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Ziyang Xu","raw_affiliation_strings":["Princeton University, USA"],"affiliations":[{"raw_affiliation_string":"Princeton University, USA","institution_ids":["https://openalex.org/I20089843"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5026113409","display_name":"Zujun Tan","orcid":"https://orcid.org/0000-0002-1450-6817"},"institutions":[{"id":"https://openalex.org/I20089843","display_name":"Princeton University","ror":"https://ror.org/00hx57361","country_code":"US","type":"education","lineage":["https://openalex.org/I20089843"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Zujun Tan","raw_affiliation_strings":["Princeton University, USA"],"affiliations":[{"raw_affiliation_string":"Princeton University, USA","institution_ids":["https://openalex.org/I20089843"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5082084559","display_name":"Greg Chan","orcid":null},"institutions":[{"id":"https://openalex.org/I20089843","display_name":"Princeton University","ror":"https://ror.org/00hx57361","country_code":"US","type":"education","lineage":["https://openalex.org/I20089843"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Greg Chan","raw_affiliation_strings":["Princeton University, USA"],"affiliations":[{"raw_affiliation_string":"Princeton University, USA","institution_ids":["https://openalex.org/I20089843"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5084389543","display_name":"Simone Campanoni","orcid":"https://orcid.org/0000-0001-9806-7016"},"institutions":[{"id":"https://openalex.org/I111979921","display_name":"Northwestern University","ror":"https://ror.org/000e0be47","country_code":"US","type":"education","lineage":["https://openalex.org/I111979921"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Simone Campanoni","raw_affiliation_strings":["Northwestern University, USA"],"affiliations":[{"raw_affiliation_string":"Northwestern University, USA","institution_ids":["https://openalex.org/I111979921"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5008319090","display_name":"David I. August","orcid":"https://orcid.org/0000-0003-3327-1803"},"institutions":[{"id":"https://openalex.org/I20089843","display_name":"Princeton University","ror":"https://ror.org/00hx57361","country_code":"US","type":"education","lineage":["https://openalex.org/I20089843"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"David I. August","raw_affiliation_strings":["Princeton University, USA"],"affiliations":[{"raw_affiliation_string":"Princeton University, USA","institution_ids":["https://openalex.org/I20089843"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":6,"corresponding_author_ids":["https://openalex.org/A5042788966"],"corresponding_institution_ids":["https://openalex.org/I20089843"],"apc_list":null,"apc_paid":null,"fwci":2.0793,"has_fulltext":false,"cited_by_count":12,"citation_normalized_percentile":{"value":0.86716028,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"638","last_page":"654"},"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/T11424","display_name":"Security and Verification in Computing","score":0.9962000250816345,"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/T10772","display_name":"Distributed systems and fault tolerance","score":0.9959999918937683,"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/speculation","display_name":"Speculation","score":0.9144816398620605},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8472681045532227},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.7377844452857971},{"id":"https://openalex.org/keywords/speculative-execution","display_name":"Speculative execution","score":0.6505647897720337},{"id":"https://openalex.org/keywords/dataflow","display_name":"Dataflow","score":0.6239601969718933},{"id":"https://openalex.org/keywords/static-analysis","display_name":"Static analysis","score":0.5550906658172607},{"id":"https://openalex.org/keywords/spec#","display_name":"Spec#","score":0.5281039476394653},{"id":"https://openalex.org/keywords/profiling","display_name":"Profiling (computer programming)","score":0.5236660838127136},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.5152419209480286},{"id":"https://openalex.org/keywords/dependence-analysis","display_name":"Dependence analysis","score":0.4980952739715576},{"id":"https://openalex.org/keywords/speculative-multithreading","display_name":"Speculative multithreading","score":0.4792494773864746},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.46970412135124207},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.46184083819389343},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.4604635238647461},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4580783247947693},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.15596935153007507},{"id":"https://openalex.org/keywords/multithreading","display_name":"Multithreading","score":0.11744257807731628}],"concepts":[{"id":"https://openalex.org/C47941915","wikidata":"https://www.wikidata.org/wiki/Q107885","display_name":"Speculation","level":2,"score":0.9144816398620605},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8472681045532227},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.7377844452857971},{"id":"https://openalex.org/C141331961","wikidata":"https://www.wikidata.org/wiki/Q2164465","display_name":"Speculative execution","level":2,"score":0.6505647897720337},{"id":"https://openalex.org/C96324660","wikidata":"https://www.wikidata.org/wiki/Q205446","display_name":"Dataflow","level":2,"score":0.6239601969718933},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.5550906658172607},{"id":"https://openalex.org/C2778565505","wikidata":"https://www.wikidata.org/wiki/Q2207566","display_name":"Spec#","level":2,"score":0.5281039476394653},{"id":"https://openalex.org/C187191949","wikidata":"https://www.wikidata.org/wiki/Q1138496","display_name":"Profiling (computer programming)","level":2,"score":0.5236660838127136},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.5152419209480286},{"id":"https://openalex.org/C27390822","wikidata":"https://www.wikidata.org/wiki/Q320724","display_name":"Dependence analysis","level":2,"score":0.4980952739715576},{"id":"https://openalex.org/C15296174","wikidata":"https://www.wikidata.org/wiki/Q7575343","display_name":"Speculative multithreading","level":4,"score":0.4792494773864746},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.46970412135124207},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.46184083819389343},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.4604635238647461},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4580783247947693},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.15596935153007507},{"id":"https://openalex.org/C201410400","wikidata":"https://www.wikidata.org/wiki/Q1064412","display_name":"Multithreading","level":3,"score":0.11744257807731628},{"id":"https://openalex.org/C138101251","wikidata":"https://www.wikidata.org/wiki/Q213092","display_name":"Thread (computing)","level":2,"score":0.0},{"id":"https://openalex.org/C139719470","wikidata":"https://www.wikidata.org/wiki/Q39680","display_name":"Macroeconomics","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}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3385412.3386028","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3385412.3386028","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"score":0.47999998927116394,"display_name":"Partnerships for the goals","id":"https://metadata.un.org/sdg/17"}],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":45,"referenced_works":["https://openalex.org/W16598917","https://openalex.org/W1546878666","https://openalex.org/W1550371161","https://openalex.org/W1583642359","https://openalex.org/W1987035533","https://openalex.org/W1988777345","https://openalex.org/W2020841721","https://openalex.org/W2046699259","https://openalex.org/W2048229966","https://openalex.org/W2072858236","https://openalex.org/W2087024856","https://openalex.org/W2097699872","https://openalex.org/W2105864407","https://openalex.org/W2106231823","https://openalex.org/W2114768063","https://openalex.org/W2116170858","https://openalex.org/W2125452276","https://openalex.org/W2125518044","https://openalex.org/W2127642645","https://openalex.org/W2131135493","https://openalex.org/W2135163511","https://openalex.org/W2139356751","https://openalex.org/W2144344516","https://openalex.org/W2146081545","https://openalex.org/W2150944768","https://openalex.org/W2152657019","https://openalex.org/W2153185479","https://openalex.org/W2155957569","https://openalex.org/W2157075925","https://openalex.org/W2158047578","https://openalex.org/W2158308706","https://openalex.org/W2158600037","https://openalex.org/W2510454942","https://openalex.org/W2616606052","https://openalex.org/W2752111507","https://openalex.org/W2765242511","https://openalex.org/W2788227472","https://openalex.org/W2790741450","https://openalex.org/W2792569511","https://openalex.org/W2996943613","https://openalex.org/W3083604022","https://openalex.org/W4232637339","https://openalex.org/W4243104579","https://openalex.org/W4245743185","https://openalex.org/W4247889999"],"related_works":["https://openalex.org/W2033801100","https://openalex.org/W2124112831","https://openalex.org/W2586771600","https://openalex.org/W1936132780","https://openalex.org/W2371844484","https://openalex.org/W2741344640","https://openalex.org/W2034886984","https://openalex.org/W1610140055","https://openalex.org/W2146081545","https://openalex.org/W1907965998"],"abstract_inverted_index":{"Program":[0],"analysis":[1,70,131,159],"determines":[2],"the":[3,42,78,146,154,163,175,182],"potential":[4],"dataflow":[5],"and":[6,71,116,135],"control":[7],"flow":[8],"relationships":[9,19,28],"among":[10],"instructions":[11],"so":[12],"that":[13],"compiler":[14],"optimizations":[15,34,48,74],"can":[16],"respect":[17],"these":[18,27,57,82],"to":[20,52,139,153],"transform":[21],"code":[22,55,124],"correctly.":[23],"Since":[24],"many":[25,65],"of":[26,77,81,102,148,166,185],"rarely":[29],"or":[30],"never":[31],"occur,":[32],"speculative":[33,47,84,104],"assert":[35],"they":[36],"do":[37],"not":[38],"exist":[39],"while":[40],"optimizing":[41],"code.":[43],"To":[44,86],"preserve":[45],"correctness,":[46],"add":[49],"validation":[50],"checks":[51],"activate":[53],"recovery":[54],"when":[56],"assertions":[58,105],"prove":[59],"untrue.":[60],"This":[61],"approach":[62],"results":[63],"in":[64,181],"missed":[66],"opportunities":[67],"because":[68],"program":[69],"thus":[72],"other":[73],"remain":[75],"unaware":[76],"full":[79,110,164],"impact":[80,111,165],"dynamically-enforced":[83],"assertions.":[85],"address":[87],"this":[88,90,118],"problem,":[89],"paper":[91],"presents":[92],"SCAF,":[93],"a":[94,141],"Speculation-aware":[95],"Collaborative":[96],"dependence":[97,114,158,170],"Analysis":[98],"Framework.":[99],"SCAF":[100,126,172],"learns":[101],"available":[103,121],"via":[106],"profiling,":[107],"computes":[108],"their":[109],"on":[112,168],"memory":[113,169,179],"analysis,":[115,171],"makes":[117],"resulting":[119],"information":[120],"for":[122,177],"all":[123,149,186],"optimizations.":[125],"is":[127,133],"modular":[128],"(adding":[129],"new":[130],"modules":[132],"easy)":[134],"collaborative":[136],"(modules":[137],"cooperate":[138],"produce":[140],"result":[142],"more":[143],"precise":[144],"than":[145],"confluence":[147],"individual":[150],"results).":[151],"Relative":[152],"best":[155],"prior":[156],"speculation-aware":[157],"technique,":[160],"by":[161],"computing":[162],"speculation":[167,180],"dramatically":[173],"reduces":[174],"need":[176],"expensive-to-validate":[178],"hot":[183],"loops":[184],"16":[187],"evaluated":[188],"C/C++":[189],"SPEC":[190],"benchmarks.":[191]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2024,"cited_by_count":2},{"year":2023,"cited_by_count":2},{"year":2022,"cited_by_count":3},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":3}],"updated_date":"2026-02-25T08:12:03.925757","created_date":"2025-10-10T00:00:00"}
