{"id":"https://openalex.org/W4414988635","doi":"https://doi.org/10.1145/3763075","title":"SafeRace: Assessing and Addressing WebGPU Memory Safety in the Presence of Data Races","display_name":"SafeRace: Assessing and Addressing WebGPU Memory Safety in the Presence of Data Races","publication_year":2025,"publication_date":"2025-10-09","ids":{"openalex":"https://openalex.org/W4414988635","doi":"https://doi.org/10.1145/3763075"},"language":"en","primary_location":{"id":"doi:10.1145/3763075","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3763075","pdf_url":null,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://doi.org/10.1145/3763075","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5065723018","display_name":"Reese Levine","orcid":"https://orcid.org/0000-0002-1324-0738"},"institutions":[{"id":"https://openalex.org/I185103710","display_name":"University of California, Santa Cruz","ror":"https://ror.org/03s65by71","country_code":"US","type":"education","lineage":["https://openalex.org/I185103710"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Reese Levine","raw_affiliation_strings":["University of California at Santa Cruz, Santa Cruz, USA"],"raw_orcid":"https://orcid.org/0000-0002-1324-0738","affiliations":[{"raw_affiliation_string":"University of California at Santa Cruz, Santa Cruz, USA","institution_ids":["https://openalex.org/I185103710"]}]},{"author_position":"middle","author":{"id":null,"display_name":"Ashley Lee","orcid":"https://orcid.org/0009-0000-4724-8992"},"institutions":[{"id":"https://openalex.org/I185103710","display_name":"University of California, Santa Cruz","ror":"https://ror.org/03s65by71","country_code":"US","type":"education","lineage":["https://openalex.org/I185103710"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Ashley Lee","raw_affiliation_strings":["University of California at Santa Cruz, Santa Cruz, USA"],"raw_orcid":"https://orcid.org/0009-0000-4724-8992","affiliations":[{"raw_affiliation_string":"University of California at Santa Cruz, Santa Cruz, USA","institution_ids":["https://openalex.org/I185103710"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5119918324","display_name":"Neha Abbas","orcid":null},"institutions":[{"id":"https://openalex.org/I185103710","display_name":"University of California, Santa Cruz","ror":"https://ror.org/03s65by71","country_code":"US","type":"education","lineage":["https://openalex.org/I185103710"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Neha Abbas","raw_affiliation_strings":["University of California at Santa Cruz, Santa Cruz, USA"],"raw_orcid":"https://orcid.org/0009-0000-6130-5092","affiliations":[{"raw_affiliation_string":"University of California at Santa Cruz, Santa Cruz, USA","institution_ids":["https://openalex.org/I185103710"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5119918325","display_name":"Kyle Little","orcid":null},"institutions":[{"id":"https://openalex.org/I185103710","display_name":"University of California, Santa Cruz","ror":"https://ror.org/03s65by71","country_code":"US","type":"education","lineage":["https://openalex.org/I185103710"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Kyle Little","raw_affiliation_strings":["University of California at Santa Cruz, Santa Cruz, USA"],"raw_orcid":"https://orcid.org/0009-0001-1511-3839","affiliations":[{"raw_affiliation_string":"University of California at Santa Cruz, Santa Cruz, USA","institution_ids":["https://openalex.org/I185103710"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5052590511","display_name":"Tyler Sorensen","orcid":"https://orcid.org/0000-0003-1646-7935"},"institutions":[{"id":"https://openalex.org/I1290206253","display_name":"Microsoft (United States)","ror":"https://ror.org/00d0nc645","country_code":"US","type":"company","lineage":["https://openalex.org/I1290206253"]},{"id":"https://openalex.org/I185103710","display_name":"University of California, Santa Cruz","ror":"https://ror.org/03s65by71","country_code":"US","type":"education","lineage":["https://openalex.org/I185103710"]},{"id":"https://openalex.org/I58610484","display_name":"Seattle University","ror":"https://ror.org/02jqc0m91","country_code":"US","type":"education","lineage":["https://openalex.org/I58610484"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Tyler Sorensen","raw_affiliation_strings":["Microsoft, Seattle, USA","University of California at Santa Cruz, Santa Cruz, USA"],"raw_orcid":"https://orcid.org/0000-0003-1646-7935","affiliations":[{"raw_affiliation_string":"Microsoft, Seattle, USA","institution_ids":["https://openalex.org/I1290206253","https://openalex.org/I58610484"]},{"raw_affiliation_string":"University of California at Santa Cruz, Santa Cruz, USA","institution_ids":["https://openalex.org/I185103710"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5065723018"],"corresponding_institution_ids":["https://openalex.org/I185103710"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.26307353,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"9","issue":"OOPSLA2","first_page":"697","last_page":"725"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9988999962806702,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9988999962806702,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9987999796867371,"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.9983000159263611,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.7300999760627747},{"id":"https://openalex.org/keywords/memory-safety","display_name":"Memory safety","score":0.6499000191688538},{"id":"https://openalex.org/keywords/component","display_name":"Component (thermodynamics)","score":0.6377000212669373},{"id":"https://openalex.org/keywords/memory-errors","display_name":"Memory errors","score":0.4715000092983246},{"id":"https://openalex.org/keywords/vulnerability","display_name":"Vulnerability (computing)","score":0.4185999929904938},{"id":"https://openalex.org/keywords/compile-time","display_name":"Compile time","score":0.41850000619888306},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.40790000557899475},{"id":"https://openalex.org/keywords/memory-protection","display_name":"Memory protection","score":0.4065999984741211},{"id":"https://openalex.org/keywords/interface","display_name":"Interface (matter)","score":0.36329999566078186}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8263000249862671},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7300999760627747},{"id":"https://openalex.org/C28180684","wikidata":"https://www.wikidata.org/wiki/Q4080983","display_name":"Memory safety","level":3,"score":0.6499000191688538},{"id":"https://openalex.org/C168167062","wikidata":"https://www.wikidata.org/wiki/Q1117970","display_name":"Component (thermodynamics)","level":2,"score":0.6377000212669373},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6119999885559082},{"id":"https://openalex.org/C119907115","wikidata":"https://www.wikidata.org/wiki/Q6815725","display_name":"Memory errors","level":3,"score":0.4715000092983246},{"id":"https://openalex.org/C95713431","wikidata":"https://www.wikidata.org/wiki/Q631425","display_name":"Vulnerability (computing)","level":2,"score":0.4185999929904938},{"id":"https://openalex.org/C200833197","wikidata":"https://www.wikidata.org/wiki/Q333707","display_name":"Compile time","level":3,"score":0.41850000619888306},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.40790000557899475},{"id":"https://openalex.org/C18131444","wikidata":"https://www.wikidata.org/wiki/Q163585","display_name":"Memory protection","level":5,"score":0.4065999984741211},{"id":"https://openalex.org/C113843644","wikidata":"https://www.wikidata.org/wiki/Q901882","display_name":"Interface (matter)","level":4,"score":0.36329999566078186},{"id":"https://openalex.org/C115168132","wikidata":"https://www.wikidata.org/wiki/Q55813","display_name":"Machine code","level":3,"score":0.359499990940094},{"id":"https://openalex.org/C145428669","wikidata":"https://www.wikidata.org/wiki/Q471748","display_name":"Exception handling","level":2,"score":0.34279999136924744},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.33079999685287476},{"id":"https://openalex.org/C26713055","wikidata":"https://www.wikidata.org/wiki/Q245962","display_name":"Implementation","level":2,"score":0.3294999897480011},{"id":"https://openalex.org/C33762810","wikidata":"https://www.wikidata.org/wiki/Q461671","display_name":"Data integrity","level":2,"score":0.31209999322891235},{"id":"https://openalex.org/C2779639559","wikidata":"https://www.wikidata.org/wiki/Q7661178","display_name":"Symbolic execution","level":3,"score":0.2840999960899353},{"id":"https://openalex.org/C184337299","wikidata":"https://www.wikidata.org/wiki/Q1437428","display_name":"Semantics (computer science)","level":2,"score":0.27810001373291016},{"id":"https://openalex.org/C19024347","wikidata":"https://www.wikidata.org/wiki/Q211496","display_name":"High-level programming language","level":3,"score":0.27649998664855957},{"id":"https://openalex.org/C176649486","wikidata":"https://www.wikidata.org/wiki/Q2308807","display_name":"Memory management","level":3,"score":0.27570000290870667},{"id":"https://openalex.org/C75165309","wikidata":"https://www.wikidata.org/wiki/Q2258979","display_name":"Search engine indexing","level":2,"score":0.26159998774528503},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.25839999318122864},{"id":"https://openalex.org/C47487241","wikidata":"https://www.wikidata.org/wiki/Q5227230","display_name":"Data access","level":2,"score":0.2542000114917755},{"id":"https://openalex.org/C119024030","wikidata":"https://www.wikidata.org/wiki/Q759899","display_name":"Call stack","level":3,"score":0.2531999945640564},{"id":"https://openalex.org/C125411270","wikidata":"https://www.wikidata.org/wiki/Q18653","display_name":"Encoding (memory)","level":2,"score":0.2517000138759613}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3763075","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3763075","pdf_url":null,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3763075","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3763075","pdf_url":null,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","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":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":53,"referenced_works":["https://openalex.org/W109452506","https://openalex.org/W120838261","https://openalex.org/W1525350307","https://openalex.org/W1624569747","https://openalex.org/W1972544179","https://openalex.org/W2000659103","https://openalex.org/W2025819261","https://openalex.org/W2045238089","https://openalex.org/W2049695835","https://openalex.org/W2068034551","https://openalex.org/W2091085450","https://openalex.org/W2096527448","https://openalex.org/W2121717408","https://openalex.org/W2135023759","https://openalex.org/W2144118030","https://openalex.org/W2155877593","https://openalex.org/W2167744164","https://openalex.org/W2168272209","https://openalex.org/W2170224888","https://openalex.org/W2280574045","https://openalex.org/W2293624369","https://openalex.org/W2295951005","https://openalex.org/W2559594945","https://openalex.org/W2626811727","https://openalex.org/W2759550170","https://openalex.org/W2784876765","https://openalex.org/W2799051758","https://openalex.org/W2898125173","https://openalex.org/W2931305575","https://openalex.org/W2994929670","https://openalex.org/W3008797115","https://openalex.org/W3028520121","https://openalex.org/W3098619491","https://openalex.org/W3173506450","https://openalex.org/W3186710384","https://openalex.org/W3197594700","https://openalex.org/W3200544313","https://openalex.org/W3205191816","https://openalex.org/W4233410239","https://openalex.org/W4234066571","https://openalex.org/W4238083723","https://openalex.org/W4292119927","https://openalex.org/W4309591680","https://openalex.org/W4318541674","https://openalex.org/W4324297016","https://openalex.org/W4379512361","https://openalex.org/W4384155482","https://openalex.org/W4391013063","https://openalex.org/W4391420909","https://openalex.org/W4399851050","https://openalex.org/W4403222861","https://openalex.org/W4406265653","https://openalex.org/W7077471593"],"related_works":[],"abstract_inverted_index":{"In":[0,73],"untrusted":[1],"execution":[2,126,179],"environments":[3,18],"such":[4,32],"as":[5,33,152,337,339],"web":[6],"browsers,":[7],"code":[8,88],"from":[9],"remote":[10],"sources":[11],"is":[12,204,216,241],"regularly":[13],"executed.":[14],"To":[15,109],"harden":[16],"these":[17],"against":[19],"attacks,":[20],"constituent":[21],"programming":[22],"languages":[23,50],"and":[24,120,203,334],"their":[25],"implementations":[26],"must":[27,38,199],"uphold":[28],"certain":[29],"safety":[30,57,107,175],"properties,":[31],"memory":[34,106,174,197,329],"safety.":[35],"These":[36],"properties":[37,62],"be":[39,93,140,200,260],"maintained":[40],"across":[41,123,297],"the":[42,55,82,124,164,177,183,224,238,286],"entire":[43],"compilation":[44,299],"stack,":[45],"which":[46,99],"may":[47],"include":[48],"intermediate":[49,96,220],"that":[51,133,172,192,222,230,264,314],"do":[52],"not":[53,64,137,242],"provide":[54],"same":[56],"guarantees.":[58],"Any":[59],"case":[60],"where":[61,87],"are":[63,157,268],"preserved":[65],"could":[66,103,318],"lead":[67],"to":[68,95,139,196,244,246,252,270],"a":[69,78,115,147,207,217,291,340,346],"serious":[70],"security":[71],"vulnerability.":[72],"this":[74,134,155,272,322],"work,":[75],"we":[76,112,162,262],"identify":[77],"specification":[79,121],"vulnerability":[80,135],"in":[81,98,154,176,182,332,345],"WebGPU":[83,282],"Shading":[84],"Language":[85],"(WGSL)":[86],"with":[89,274],"data":[90,186,227,257],"races":[91,228],"can":[92,259],"compiled":[94],"representations":[97,221],"an":[100],"optimizing":[101],"compiler":[102,208],"legitimately":[104],"remove":[105],"guardrails.":[108],"address":[110],"this,":[111,161],"present":[113],"SafeRace,":[114],"collection":[116],"of":[117,185,226,294,343,349],"threat":[118,130],"assessments":[119,326],"proposals":[122],"WGSL":[125,178,211,249,344],"stack.":[127],"While":[128,237],"our":[129,301,325],"assessment":[131],"showed":[132],"does":[136],"appear":[138],"exploitable":[141],"on":[142,219,254,278,305],"current":[143],"systems,":[144],"it":[145],"creates":[146],"\u201dticking":[148],"time":[149],"bomb\u201d,":[150],"especially":[151],"compilers":[153],"area":[156],"rapidly":[158],"evolving.":[159],"Given":[160],"introduce":[163],"SafeRace":[165],"Memory":[166],"Safety":[167],"Guarantee":[168],"(SMSG),":[169],"two":[170],"components":[171],"preserve":[173],"stack":[180],"even":[181],"presence":[184],"races.":[187],"The":[188,213],"first":[189,239],"component":[190,215,240,273,288],"specifies":[191],"program":[193,235],"slices":[194],"contributing":[195],"indexing":[198],"race":[201],"free":[202],"implemented":[205],"via":[206],"pass":[209],"for":[210],"programs.":[212],"second":[214,287],"requirement":[218],"limits":[223],"effects":[225],"so":[229],"they":[231],"cannot":[232],"impact":[233],"race-free":[234],"slices.":[236],"guaranteed":[243],"apply":[245],"all":[247],"possible":[248],"programs":[250],"due":[251],"limitations":[253],"how":[255],"some":[256],"types":[258],"accessed,":[261],"show":[263,303],"existing":[265,280],"language":[266],"constructs":[267],"sufficient":[269],"implement":[271],"minimal":[275],"performance":[276],"overhead":[277],"many":[279],"important":[281],"applications.":[283],"We":[284],"test":[285],"by":[289],"performing":[290],"fuzzing":[292],"campaign":[293],"81":[295],"hours":[296],"21":[298],"stacks;":[300],"results":[302],"violations":[304],"only":[306],"one":[307],"(likely":[308],"buggy)":[309],"machine,":[310],"thus":[311],"providing":[312],"evidence":[313],"lower-level":[315],"GPU":[316,328],"frameworks":[317],"relatively":[319],"straightforwardly":[320],"support":[321],"constraint.":[323],"Finally,":[324],"discovered":[327],"isolation":[330],"vulnerabilities":[331],"Apple":[333],"AMD":[335],"GPUs,":[336],"well":[338],"security-critical":[341],"miscompilation":[342],"pre-release":[347],"version":[348],"Firefox.":[350]},"counts_by_year":[],"updated_date":"2026-05-21T06:26:12.895304","created_date":"2025-10-10T00:00:00"}
