{"id":"https://openalex.org/W1894589249","doi":"https://doi.org/10.1145/2835179","title":"Fence Placement for Legacy Data-Race-Free Programs via Synchronization Read Detection","display_name":"Fence Placement for Legacy Data-Race-Free Programs via Synchronization Read Detection","publication_year":2015,"publication_date":"2015-12-08","ids":{"openalex":"https://openalex.org/W1894589249","doi":"https://doi.org/10.1145/2835179","mag":"1894589249"},"language":"en","primary_location":{"id":"doi:10.1145/2835179","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2835179","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/2835179?download=true","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/2835179?download=true","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5089327667","display_name":"Andrew J. McPherson","orcid":null},"institutions":[{"id":"https://openalex.org/I98677209","display_name":"University of Edinburgh","ror":"https://ror.org/01nrxwf90","country_code":"GB","type":"education","lineage":["https://openalex.org/I98677209"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Andrew J. Mcpherson","raw_affiliation_strings":["University of Edinburgh"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Edinburgh","institution_ids":["https://openalex.org/I98677209"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5056071760","display_name":"Vijay Nagarajan","orcid":"https://orcid.org/0009-0000-5045-4754"},"institutions":[{"id":"https://openalex.org/I98677209","display_name":"University of Edinburgh","ror":"https://ror.org/01nrxwf90","country_code":"GB","type":"education","lineage":["https://openalex.org/I98677209"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Vijay Nagarajan","raw_affiliation_strings":["University of Edinburgh, United Kingdom"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Edinburgh, United Kingdom","institution_ids":["https://openalex.org/I98677209"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5073254249","display_name":"Susmit Sarkar","orcid":"https://orcid.org/0000-0002-4259-9213"},"institutions":[{"id":"https://openalex.org/I16835326","display_name":"University of St Andrews","ror":"https://ror.org/02wn5qz54","country_code":"GB","type":"education","lineage":["https://openalex.org/I16835326"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Susmit Sarkar","raw_affiliation_strings":["University of St. Andrews, United Kingdom"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of St. Andrews, United Kingdom","institution_ids":["https://openalex.org/I16835326"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5090902844","display_name":"Marcelo Cintra","orcid":null},"institutions":[{"id":"https://openalex.org/I1343180700","display_name":"Intel (United States)","ror":"https://ror.org/01ek73717","country_code":"US","type":"company","lineage":["https://openalex.org/I1343180700"]},{"id":"https://openalex.org/I4210094487","display_name":"Intel (Germany)","ror":"https://ror.org/00m2x0g47","country_code":"DE","type":"company","lineage":["https://openalex.org/I1343180700","https://openalex.org/I4210094487"]}],"countries":["DE","US"],"is_corresponding":false,"raw_author_name":"Marcelo Cintra","raw_affiliation_strings":["Intel, Germany","Intel Germany#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Intel, Germany","institution_ids":["https://openalex.org/I4210094487"]},{"raw_affiliation_string":"Intel Germany#TAB#","institution_ids":["https://openalex.org/I1343180700"]}]}],"institutions":[],"countries_distinct_count":3,"institutions_distinct_count":4,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":true,"cited_by_count":1,"citation_normalized_percentile":{"value":0.05043178,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":94},"biblio":{"volume":"12","issue":"4","first_page":"1","last_page":"23"},"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/T10772","display_name":"Distributed systems and fault tolerance","score":0.9998000264167786,"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/T10101","display_name":"Cloud Computing and Resource Management","score":0.9988999962806702,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8941392302513123},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.7248748540878296},{"id":"https://openalex.org/keywords/consistency","display_name":"Consistency (knowledge bases)","score":0.6807679533958435},{"id":"https://openalex.org/keywords/synchronization","display_name":"Synchronization (alternating current)","score":0.6575890779495239},{"id":"https://openalex.org/keywords/sequential-consistency","display_name":"Sequential consistency","score":0.5956418514251709},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5448652505874634},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.5287216305732727},{"id":"https://openalex.org/keywords/fence","display_name":"Fence (mathematics)","score":0.5179768800735474},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.5111353993415833},{"id":"https://openalex.org/keywords/consistency-model","display_name":"Consistency model","score":0.41893115639686584},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.35993343591690063},{"id":"https://openalex.org/keywords/data-consistency","display_name":"Data consistency","score":0.3451162576675415},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.10817143321037292}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8941392302513123},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7248748540878296},{"id":"https://openalex.org/C2776436953","wikidata":"https://www.wikidata.org/wiki/Q5163215","display_name":"Consistency (knowledge bases)","level":2,"score":0.6807679533958435},{"id":"https://openalex.org/C2778562939","wikidata":"https://www.wikidata.org/wiki/Q1298791","display_name":"Synchronization (alternating current)","level":3,"score":0.6575890779495239},{"id":"https://openalex.org/C82029504","wikidata":"https://www.wikidata.org/wiki/Q4373882","display_name":"Sequential consistency","level":4,"score":0.5956418514251709},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5448652505874634},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.5287216305732727},{"id":"https://openalex.org/C2779652578","wikidata":"https://www.wikidata.org/wiki/Q5442977","display_name":"Fence (mathematics)","level":2,"score":0.5179768800735474},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.5111353993415833},{"id":"https://openalex.org/C37279795","wikidata":"https://www.wikidata.org/wiki/Q2492305","display_name":"Consistency model","level":3,"score":0.41893115639686584},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.35993343591690063},{"id":"https://openalex.org/C93361087","wikidata":"https://www.wikidata.org/wiki/Q4426698","display_name":"Data consistency","level":2,"score":0.3451162576675415},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.10817143321037292},{"id":"https://openalex.org/C31258907","wikidata":"https://www.wikidata.org/wiki/Q1301371","display_name":"Computer network","level":1,"score":0.0},{"id":"https://openalex.org/C127162648","wikidata":"https://www.wikidata.org/wiki/Q16858953","display_name":"Channel (broadcasting)","level":2,"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/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","level":1,"score":0.0}],"mesh":[],"locations_count":5,"locations":[{"id":"doi:10.1145/2835179","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2835179","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/2835179?download=true","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:pure.ed.ac.uk:openaire/ea6d2b97-6f03-410a-962e-4367bd3d9b8f","is_oa":true,"landing_page_url":"https://www.research.ed.ac.uk/en/publications/ea6d2b97-6f03-410a-962e-4367bd3d9b8f","pdf_url":null,"source":{"id":"https://openalex.org/S4406922455","display_name":"Edinburgh Research Explorer","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"McPherson, A J, Nagarajan, V, Sarkar, S & Cintra, M 2016, 'Fence Placement for Legacy Data-Race-Free Programs via Synchronization Read Detection', ACM Transactions on Architecture and Code Optimization, vol. 12, no. 4, 46. https://doi.org/10.1145/2835179","raw_type":"info:eu-repo/semantics/publishedVersion"},{"id":"pmh:oai:pure.ed.ac.uk:publications/ea6d2b97-6f03-410a-962e-4367bd3d9b8f","is_oa":false,"landing_page_url":"http://hdl.handle.net/20.500.11820/ea6d2b97-6f03-410a-962e-4367bd3d9b8f","pdf_url":null,"source":{"id":"https://openalex.org/S4406922455","display_name":"Edinburgh Research Explorer","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":""},{"id":"pmh:oai:pure.ed.ac.uk:publications/fe0b38eb-f5dd-4a95-b1c8-fcaa58883d15","is_oa":false,"landing_page_url":"https://www.research.ed.ac.uk/portal/en/publications/fence-placement-for-legacy-dataracefree-programs-via-synchronization-read-detection(fe0b38eb-f5dd-4a95-b1c8-fcaa58883d15).html","pdf_url":null,"source":{"id":"https://openalex.org/S4406922455","display_name":"Edinburgh Research Explorer","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":""},{"id":"pmh:oai:research-repository.st-andrews.ac.uk:10023/8387","is_oa":false,"landing_page_url":"https://hdl.handle.net/10023/8387","pdf_url":null,"source":{"id":"https://openalex.org/S4306400230","display_name":"St Andrews Research Repository (St Andrews Research Repository)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I16835326","host_organization_name":"University of St Andrews","host_organization_lineage":["https://openalex.org/I16835326"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Journal article"}],"best_oa_location":{"id":"doi:10.1145/2835179","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2835179","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/2835179?download=true","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":[{"id":"https://openalex.org/G1288522079","display_name":"AnyScale Applications","funder_award_id":"EP/L000725/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"},{"id":"https://openalex.org/G341710930","display_name":null,"funder_award_id":"EP/H027351/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"},{"id":"https://openalex.org/G4917891107","display_name":null,"funder_award_id":"EP/L000725/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"}],"funders":[{"id":"https://openalex.org/F4320320332","display_name":"University of Edinburgh","ror":"https://ror.org/01nrxwf90"},{"id":"https://openalex.org/F4320334627","display_name":"Engineering and Physical Sciences Research Council","ror":"https://ror.org/0439y7842"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W1894589249.pdf","grobid_xml":"https://content.openalex.org/works/W1894589249.grobid-xml"},"referenced_works_count":55,"referenced_works":["https://openalex.org/W178326370","https://openalex.org/W1738788207","https://openalex.org/W1857467995","https://openalex.org/W1885534640","https://openalex.org/W1915338469","https://openalex.org/W1967564401","https://openalex.org/W1973964525","https://openalex.org/W1981393723","https://openalex.org/W1986049261","https://openalex.org/W2001738739","https://openalex.org/W2010497096","https://openalex.org/W2026782272","https://openalex.org/W2028583484","https://openalex.org/W2029601347","https://openalex.org/W2031844067","https://openalex.org/W2036267700","https://openalex.org/W2039509099","https://openalex.org/W2054739713","https://openalex.org/W2054983537","https://openalex.org/W2058317042","https://openalex.org/W2062019893","https://openalex.org/W2072725684","https://openalex.org/W2091085450","https://openalex.org/W2099706037","https://openalex.org/W2105900173","https://openalex.org/W2106389308","https://openalex.org/W2107699547","https://openalex.org/W2107859560","https://openalex.org/W2109784760","https://openalex.org/W2127591346","https://openalex.org/W2127731413","https://openalex.org/W2138074470","https://openalex.org/W2141395109","https://openalex.org/W2142101409","https://openalex.org/W2143078813","https://openalex.org/W2145021036","https://openalex.org/W2152885346","https://openalex.org/W2155227117","https://openalex.org/W2162241008","https://openalex.org/W2166071597","https://openalex.org/W2169875292","https://openalex.org/W2170523074","https://openalex.org/W2172151408","https://openalex.org/W2176864362","https://openalex.org/W2728008137","https://openalex.org/W4206566500","https://openalex.org/W4206635466","https://openalex.org/W4230333905","https://openalex.org/W4234066571","https://openalex.org/W4234648926","https://openalex.org/W4234858060","https://openalex.org/W4243363410","https://openalex.org/W4250089307","https://openalex.org/W4251987281","https://openalex.org/W4294549613"],"related_works":["https://openalex.org/W2123855908","https://openalex.org/W2127899878","https://openalex.org/W2322874084","https://openalex.org/W1604914670","https://openalex.org/W2497440208","https://openalex.org/W4301961819","https://openalex.org/W2971748376","https://openalex.org/W2034248803","https://openalex.org/W2258014168","https://openalex.org/W2358334493"],"abstract_inverted_index":{"Shared-memory":[0],"programmers":[1],"traditionally":[2],"assumed":[3],"Sequential":[4],"Consistency":[5],"(SC),":[6],"but":[7],"modern":[8],"systems":[9],"have":[10],"relaxed":[11],"memory":[12,66],"consistency.":[13],"Here,":[14],"the":[15,29,36,63],"trend":[16],"in":[17],"languages":[18],"is":[19],"toward":[20],"Data-Race-Free":[21],"(DRF)":[22],"models,":[23],"where,":[24],"assuming":[25],"annotated":[26],"synchronizations":[27],"and":[28,38,90],"program":[30],"being":[31],"well-synchronized":[32,49],"by":[33,69,73],"those":[34],"synchronizations,":[35],"hardware":[37],"compiler":[39],"guarantee":[40],"SC.":[41],"However,":[42],"legacy":[43,56],"programs":[44,52],"lack":[45],"annotations,":[46],"so":[47],"even":[48],"(legacy":[50],"DRF)":[51],"aren\u2019t":[53],"recognized.":[54],"For":[55],"DRF":[57],"programs,":[58],"we":[59],"can":[60],"significantly":[61],"prune":[62],"set":[64],"of":[65],"orderings":[67],"determined":[68],"automated":[70],"fence":[71],"placement":[72],"automatically":[74],"identifying":[75,83],"synchronization":[76],"reads.":[77],"We":[78],"prove":[79],"our":[80],"rules":[81],"for":[82],"them":[84,87],"conservatively,":[85],"implement":[86],"within":[88],"LLVM,":[89],"observe":[91],"a":[92],"30%":[93],"average":[94],"performance":[95],"improvement":[96],"over":[97],"previous":[98],"techniques.":[99]},"counts_by_year":[{"year":2020,"cited_by_count":1}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
