{"id":"https://openalex.org/W4401408720","doi":"https://doi.org/10.1145/3673038.3673109","title":"RMASanitizer: Generalized Runtime Detection of Data Races in Remote Memory Access Applications","display_name":"RMASanitizer: Generalized Runtime Detection of Data Races in Remote Memory Access Applications","publication_year":2024,"publication_date":"2024-08-08","ids":{"openalex":"https://openalex.org/W4401408720","doi":"https://doi.org/10.1145/3673038.3673109"},"language":"en","primary_location":{"id":"doi:10.1145/3673038.3673109","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3673038.3673109","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3673038.3673109","source":null,"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 53rd International Conference on Parallel Processing","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3673038.3673109","any_repository_has_fulltext":null},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5065295830","display_name":"Simon Schwitanski","orcid":"https://orcid.org/0000-0001-7121-7205"},"institutions":[{"id":"https://openalex.org/I887968799","display_name":"RWTH Aachen University","ror":"https://ror.org/04xfq0f34","country_code":"DE","type":"education","lineage":["https://openalex.org/I887968799"]}],"countries":["DE"],"is_corresponding":true,"raw_author_name":"Simon Schwitanski","raw_affiliation_strings":["High Performance Computing, RWTH Aachen University, Germany"],"affiliations":[{"raw_affiliation_string":"High Performance Computing, RWTH Aachen University, Germany","institution_ids":["https://openalex.org/I887968799"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5106355541","display_name":"Yussur Mustafa Oraji","orcid":"https://orcid.org/0009-0004-9922-3112"},"institutions":[{"id":"https://openalex.org/I887968799","display_name":"RWTH Aachen University","ror":"https://ror.org/04xfq0f34","country_code":"DE","type":"education","lineage":["https://openalex.org/I887968799"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Yussur Mustafa Oraji","raw_affiliation_strings":["High Performance Computing, RWTH Aachen University, Germany"],"affiliations":[{"raw_affiliation_string":"High Performance Computing, RWTH Aachen University, Germany","institution_ids":["https://openalex.org/I887968799"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5005453417","display_name":"Cornelius P\u00e4tzold","orcid":"https://orcid.org/0009-0007-1898-9995"},"institutions":[{"id":"https://openalex.org/I887968799","display_name":"RWTH Aachen University","ror":"https://ror.org/04xfq0f34","country_code":"DE","type":"education","lineage":["https://openalex.org/I887968799"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Cornelius P\u00e4tzold","raw_affiliation_strings":["High Performance Computing, RWTH Aachen University, Germany"],"affiliations":[{"raw_affiliation_string":"High Performance Computing, RWTH Aachen University, Germany","institution_ids":["https://openalex.org/I887968799"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5044273470","display_name":"Joachim Jenke","orcid":"https://orcid.org/0000-0003-0640-8966"},"institutions":[{"id":"https://openalex.org/I887968799","display_name":"RWTH Aachen University","ror":"https://ror.org/04xfq0f34","country_code":"DE","type":"education","lineage":["https://openalex.org/I887968799"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Joachim Jenke","raw_affiliation_strings":["High Performance Computing, RWTH Aachen University, Germany"],"affiliations":[{"raw_affiliation_string":"High Performance Computing, RWTH Aachen University, Germany","institution_ids":["https://openalex.org/I887968799"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5019167697","display_name":"Felix Tomski","orcid":"https://orcid.org/0000-0003-3137-5596"},"institutions":[{"id":"https://openalex.org/I887968799","display_name":"RWTH Aachen University","ror":"https://ror.org/04xfq0f34","country_code":"DE","type":"education","lineage":["https://openalex.org/I887968799"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Felix Tomski","raw_affiliation_strings":["High Performance Computing, RWTH Aachen University, Germany"],"affiliations":[{"raw_affiliation_string":"High Performance Computing, RWTH Aachen University, Germany","institution_ids":["https://openalex.org/I887968799"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5108339675","display_name":"Matthias M\u00fcller","orcid":"https://orcid.org/0009-0005-8772-7775"},"institutions":[{"id":"https://openalex.org/I887968799","display_name":"RWTH Aachen University","ror":"https://ror.org/04xfq0f34","country_code":"DE","type":"education","lineage":["https://openalex.org/I887968799"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Matthias S. M\u00fcller","raw_affiliation_strings":["High Performance Computing, RWTH Aachen University, Germany"],"affiliations":[{"raw_affiliation_string":"High Performance Computing, RWTH Aachen University, Germany","institution_ids":["https://openalex.org/I887968799"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":6,"corresponding_author_ids":["https://openalex.org/A5065295830"],"corresponding_institution_ids":["https://openalex.org/I887968799"],"apc_list":null,"apc_paid":null,"fwci":1.5594,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.83301417,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":96,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"833","last_page":"844"},"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.9991000294685364,"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.9991000294685364,"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.9983000159263611,"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.9980999827384949,"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.8719143867492676},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.64054274559021},{"id":"https://openalex.org/keywords/memory-model","display_name":"Memory model","score":0.5607969760894775},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.5100587010383606},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.465608149766922},{"id":"https://openalex.org/keywords/synchronization","display_name":"Synchronization (alternating current)","score":0.45681464672088623},{"id":"https://openalex.org/keywords/benchmark","display_name":"Benchmark (surveying)","score":0.45090216398239136},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.43977412581443787},{"id":"https://openalex.org/keywords/data-access","display_name":"Data access","score":0.43664151430130005},{"id":"https://openalex.org/keywords/message-passing","display_name":"Message passing","score":0.41151753067970276},{"id":"https://openalex.org/keywords/shared-memory","display_name":"Shared memory","score":0.3611759543418884},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.2759597599506378},{"id":"https://openalex.org/keywords/computer-network","display_name":"Computer network","score":0.11277115345001221}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8719143867492676},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.64054274559021},{"id":"https://openalex.org/C12186640","wikidata":"https://www.wikidata.org/wiki/Q6815743","display_name":"Memory model","level":3,"score":0.5607969760894775},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.5100587010383606},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.465608149766922},{"id":"https://openalex.org/C2778562939","wikidata":"https://www.wikidata.org/wiki/Q1298791","display_name":"Synchronization (alternating current)","level":3,"score":0.45681464672088623},{"id":"https://openalex.org/C185798385","wikidata":"https://www.wikidata.org/wiki/Q1161707","display_name":"Benchmark (surveying)","level":2,"score":0.45090216398239136},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.43977412581443787},{"id":"https://openalex.org/C47487241","wikidata":"https://www.wikidata.org/wiki/Q5227230","display_name":"Data access","level":2,"score":0.43664151430130005},{"id":"https://openalex.org/C854659","wikidata":"https://www.wikidata.org/wiki/Q1859284","display_name":"Message passing","level":2,"score":0.41151753067970276},{"id":"https://openalex.org/C133875982","wikidata":"https://www.wikidata.org/wiki/Q764810","display_name":"Shared memory","level":2,"score":0.3611759543418884},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.2759597599506378},{"id":"https://openalex.org/C31258907","wikidata":"https://www.wikidata.org/wiki/Q1301371","display_name":"Computer network","level":1,"score":0.11277115345001221},{"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/C13280743","wikidata":"https://www.wikidata.org/wiki/Q131089","display_name":"Geodesy","level":1,"score":0.0},{"id":"https://openalex.org/C205649164","wikidata":"https://www.wikidata.org/wiki/Q1071","display_name":"Geography","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3673038.3673109","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3673038.3673109","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3673038.3673109","source":null,"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 53rd International Conference on Parallel Processing","raw_type":"proceedings-article"}],"best_oa_location":{"id":"doi:10.1145/3673038.3673109","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3673038.3673109","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3673038.3673109","source":null,"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 53rd International Conference on Parallel Processing","raw_type":"proceedings-article"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":true,"grobid_xml":false},"content_urls":{"pdf":"https://content.openalex.org/works/W4401408720.pdf"},"referenced_works_count":24,"referenced_works":["https://openalex.org/W1478599539","https://openalex.org/W1565978235","https://openalex.org/W1972544179","https://openalex.org/W1976859632","https://openalex.org/W1981173460","https://openalex.org/W2011974310","https://openalex.org/W2102542912","https://openalex.org/W2127845986","https://openalex.org/W2129418947","https://openalex.org/W2133662847","https://openalex.org/W2207785195","https://openalex.org/W2236289510","https://openalex.org/W2890399932","https://openalex.org/W2913135575","https://openalex.org/W3046421657","https://openalex.org/W3198818607","https://openalex.org/W4231963396","https://openalex.org/W4251803824","https://openalex.org/W4289828253","https://openalex.org/W4310847819","https://openalex.org/W4320062112","https://openalex.org/W4388556606","https://openalex.org/W4388581018","https://openalex.org/W4388581027"],"related_works":["https://openalex.org/W4243844743","https://openalex.org/W3208184694","https://openalex.org/W2498758832","https://openalex.org/W4233541614","https://openalex.org/W1578042825","https://openalex.org/W3163622116","https://openalex.org/W2146401083","https://openalex.org/W4287181807","https://openalex.org/W1935251877","https://openalex.org/W2055360340"],"abstract_inverted_index":{"Remote":[0],"Memory":[1],"Access":[2],"(RMA)":[3],"programming":[4,49,138],"models":[5,50,63],"enable":[6],"processes":[7,21,224],"running":[8,203],"on":[9,127,205,231],"a":[10,58,128,142,147],"distributed-memory":[11],"computer":[12],"to":[13,41,67,85,91,222,228],"access":[14],"and":[15,54,100,122,154,179,192],"manipulate":[16],"the":[17,27,30,38,42,65,69,79,107,135,166,206,215,218,232],"memory":[18,82,158],"of":[19,78,106,134,165,198],"other":[20],"directly.":[22],"Such":[23,94],"one-sided":[24],"communication":[25,39,59],"has":[26],"benefit":[28],"that":[29,152,183,235],"receiving":[31],"process":[32],"is":[33,161,238],"not":[34],"actively":[35],"involved":[36],"in":[37,103,188,240],"compared":[40],"classical":[43],"two-sided":[44],"message-passing":[45],"model.":[46,139],"The":[47],"three":[48],"MPI":[51,119,167,189],"RMA,":[52,120,190],"OpenSHMEM,":[53,121,191],"GASPI":[55,123,193],"provide":[56],"such":[57],"scheme.":[60],"However,":[61],"RMA":[62,137],"require":[64],"developer":[66],"synchronize":[68],"accesses":[70],"with":[71,146,175,195,220],"corresponding":[72],"API":[73],"calls":[74],"correctly.":[75],"Concurrent":[76],"modifications":[77],"same":[80],"(remote)":[81],"location":[83],"due":[84],"wrong":[86],"or":[87],"missing":[88],"synchronization":[89],"lead":[90],"data":[92,95,207],"races.":[93],"races":[96,187],"are":[97],"undefined":[98],"behavior":[99],"may":[101],"result":[102],"non-deterministic":[104],"failures":[105],"program":[108],"execution.":[109],"This":[110],"paper":[111],"presents":[112],"RMASanitizer,":[113],"an":[114,196],"on-the-fly":[115,144],"race":[116,130,208],"detector":[117],"for":[118,177,217],"applications.":[124],"It":[125,160],"relies":[126],"generalized":[129],"detection":[131],"model":[132],"independent":[133],"concrete":[136],"RMASanitizer":[140,184],"combines":[141],"dynamic":[143],"analysis":[145,149],"static":[148],"at":[150],"compile-time":[151],"detects":[153],"instruments":[155],"only":[156],"relevant":[157],"accesses.":[159],"implemented":[162],"as":[163],"part":[164],"correctness":[168],"checking":[169],"framework":[170],"MUST":[171],"which":[172],"we":[173],"extended":[174],"support":[176],"OpenSHMEM":[178],"GASPI.":[180],"We":[181],"show":[182],"can":[185],"detect":[186],"applications":[194],"accuracy":[197],"over":[199],"95":[200],"percent":[201],"by":[202],"it":[204],"benchmark":[209],"suite":[210],"RMARaceBench.":[211],"On":[212],"proxy":[213],"applications,":[214],"slowdown":[216],"execution":[219],"up":[221],"700":[223],"ranges":[225],"from":[226],"1.1x":[227],"30x,":[229],"depending":[230],"application,":[233],"showing":[234],"our":[236],"tool":[237],"applicable":[239],"practice.":[241]},"counts_by_year":[{"year":2025,"cited_by_count":3}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
