{"id":"https://openalex.org/W2144457445","doi":"https://doi.org/10.1145/1941553.1941579","title":"Lock-free and scalable multi-version software transactional memory","display_name":"Lock-free and scalable multi-version software transactional memory","publication_year":2011,"publication_date":"2011-02-12","ids":{"openalex":"https://openalex.org/W2144457445","doi":"https://doi.org/10.1145/1941553.1941579","mag":"2144457445"},"language":"en","primary_location":{"id":"doi:10.1145/1941553.1941579","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1941553.1941579","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 16th ACM symposium on Principles and practice of parallel programming","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/A5054174444","display_name":"S\u00e9rgio Miguel Fernandes","orcid":null},"institutions":[{"id":"https://openalex.org/I121345201","display_name":"Instituto de Engenharia de Sistemas e Computadores Investiga\u00e7\u00e3o e Desenvolvimento","ror":"https://ror.org/04mqy3p58","country_code":"PT","type":"nonprofit","lineage":["https://openalex.org/I121345201","https://openalex.org/I4210125590"]}],"countries":["PT"],"is_corresponding":false,"raw_author_name":"S\u00e9rgio Miguel Fernandes","raw_affiliation_strings":["IST/INESC-ID, Lisbon, Portugal","IST / INESC-ID Lisbon, Portugal"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"IST/INESC-ID, Lisbon, Portugal","institution_ids":["https://openalex.org/I121345201"]},{"raw_affiliation_string":"IST / INESC-ID Lisbon, Portugal","institution_ids":["https://openalex.org/I121345201"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5032983674","display_name":"Jo\u00e3o Cachopo","orcid":"https://orcid.org/0000-0002-7290-0417"},"institutions":[{"id":"https://openalex.org/I121345201","display_name":"Instituto de Engenharia de Sistemas e Computadores Investiga\u00e7\u00e3o e Desenvolvimento","ror":"https://ror.org/04mqy3p58","country_code":"PT","type":"nonprofit","lineage":["https://openalex.org/I121345201","https://openalex.org/I4210125590"]}],"countries":["PT"],"is_corresponding":false,"raw_author_name":"Jo\u00e3o Cachopo","raw_affiliation_strings":["IST/INESC-ID, Lisbon, Portugal","IST / INESC-ID Lisbon, Portugal"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"IST/INESC-ID, Lisbon, Portugal","institution_ids":["https://openalex.org/I121345201"]},{"raw_affiliation_string":"IST / INESC-ID Lisbon, Portugal","institution_ids":["https://openalex.org/I121345201"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":14.2622,"has_fulltext":false,"cited_by_count":77,"citation_normalized_percentile":{"value":0.99106612,"is_in_top_1_percent":true,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":100},"biblio":{"volume":null,"issue":null,"first_page":"179","last_page":"188"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":1.0,"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"}},"topics":[{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":1.0,"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/T13471","display_name":"Cognitive Functions and Memory","score":0.989300012588501,"subfield":{"id":"https://openalex.org/subfields/3205","display_name":"Experimental and Cognitive Psychology"},"field":{"id":"https://openalex.org/fields/32","display_name":"Psychology"},"domain":{"id":"https://openalex.org/domains/2","display_name":"Social Sciences"}},{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9824000000953674,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/transactional-memory","display_name":"Transactional memory","score":0.8819564580917358},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8783493041992188},{"id":"https://openalex.org/keywords/software-transactional-memory","display_name":"Software transactional memory","score":0.8629637956619263},{"id":"https://openalex.org/keywords/lock","display_name":"Lock (firearm)","score":0.7422619462013245},{"id":"https://openalex.org/keywords/commit","display_name":"Commit","score":0.5364492535591125},{"id":"https://openalex.org/keywords/scalability","display_name":"Scalability","score":0.5349311828613281},{"id":"https://openalex.org/keywords/garbage-collection","display_name":"Garbage collection","score":0.4882645606994629},{"id":"https://openalex.org/keywords/serialization","display_name":"Serialization","score":0.48528239130973816},{"id":"https://openalex.org/keywords/linearizability","display_name":"Linearizability","score":0.41895946860313416},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.40983515977859497},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.40730392932891846},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.3887324631214142},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.2934003472328186},{"id":"https://openalex.org/keywords/garbage","display_name":"Garbage","score":0.2145618498325348},{"id":"https://openalex.org/keywords/database-transaction","display_name":"Database transaction","score":0.13850650191307068},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.12250474095344543},{"id":"https://openalex.org/keywords/database","display_name":"Database","score":0.10258802771568298}],"concepts":[{"id":"https://openalex.org/C134277064","wikidata":"https://www.wikidata.org/wiki/Q878206","display_name":"Transactional memory","level":3,"score":0.8819564580917358},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8783493041992188},{"id":"https://openalex.org/C167149655","wikidata":"https://www.wikidata.org/wiki/Q1189004","display_name":"Software transactional memory","level":4,"score":0.8629637956619263},{"id":"https://openalex.org/C174839445","wikidata":"https://www.wikidata.org/wiki/Q1134386","display_name":"Lock (firearm)","level":2,"score":0.7422619462013245},{"id":"https://openalex.org/C153180980","wikidata":"https://www.wikidata.org/wiki/Q19776675","display_name":"Commit","level":2,"score":0.5364492535591125},{"id":"https://openalex.org/C48044578","wikidata":"https://www.wikidata.org/wiki/Q727490","display_name":"Scalability","level":2,"score":0.5349311828613281},{"id":"https://openalex.org/C105122174","wikidata":"https://www.wikidata.org/wiki/Q322202","display_name":"Garbage collection","level":3,"score":0.4882645606994629},{"id":"https://openalex.org/C52723943","wikidata":"https://www.wikidata.org/wiki/Q1127410","display_name":"Serialization","level":2,"score":0.48528239130973816},{"id":"https://openalex.org/C20528329","wikidata":"https://www.wikidata.org/wiki/Q513932","display_name":"Linearizability","level":3,"score":0.41895946860313416},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.40983515977859497},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.40730392932891846},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.3887324631214142},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.2934003472328186},{"id":"https://openalex.org/C75403996","wikidata":"https://www.wikidata.org/wiki/Q5521979","display_name":"Garbage","level":2,"score":0.2145618498325348},{"id":"https://openalex.org/C75949130","wikidata":"https://www.wikidata.org/wiki/Q848010","display_name":"Database transaction","level":2,"score":0.13850650191307068},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.12250474095344543},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.10258802771568298},{"id":"https://openalex.org/C78519656","wikidata":"https://www.wikidata.org/wiki/Q101333","display_name":"Mechanical engineering","level":1,"score":0.0},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/1941553.1941579","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1941553.1941579","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 16th ACM symposium on Principles and practice of parallel programming","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":16,"referenced_works":["https://openalex.org/W1523021320","https://openalex.org/W1542975293","https://openalex.org/W1981423585","https://openalex.org/W2023317017","https://openalex.org/W2034963261","https://openalex.org/W2084130915","https://openalex.org/W2085407655","https://openalex.org/W2091085450","https://openalex.org/W2092911542","https://openalex.org/W2094222793","https://openalex.org/W2103933790","https://openalex.org/W2113751407","https://openalex.org/W2138373335","https://openalex.org/W2149089882","https://openalex.org/W2155500238","https://openalex.org/W2167729440"],"related_works":["https://openalex.org/W2912336518","https://openalex.org/W2357966547","https://openalex.org/W4321466410","https://openalex.org/W4378895379","https://openalex.org/W2109159719","https://openalex.org/W4313532020","https://openalex.org/W4225157728","https://openalex.org/W4243593691","https://openalex.org/W2120193195","https://openalex.org/W2040281750"],"abstract_inverted_index":{"Software":[0],"Transactional":[1],"Memory":[2],"(STM)":[3],"was":[4],"initially":[5],"proposed":[6],"as":[7],"a":[8,97,107,183],"lock-free":[9,108,140],"mechanism":[10],"for":[11,197],"concurrency":[12],"control.":[13],"Early":[14],"implementations":[15],"had":[16],"efficiency":[17],"limitations,":[18],"and":[19,37,79,90,122,129,162],"soon":[20],"obstruction-free":[21],"proposals":[22],"appeared,":[23],"to":[24,46,62,82,96,103,114,119,146,153,165,174,188],"tackle":[25],"this":[26,86],"problem,":[27],"often":[28],"simplifying":[29],"STM":[30,100],"implementation.":[31],"Today,":[32],"most":[33],"of":[34,133,159,190,200,210],"the":[35,92,177,208,211],"modern":[36],"top-performing":[38,135],"STMs":[39],"use":[40],"blocking":[41],"designs,":[42],"relying":[43],"on":[44],"locks":[45],"ensure":[47],"an":[48],"atomic":[49],"commit":[50,141],"operation.":[51],"This":[52],"approach":[53],"has":[54],"revealed":[55],"better":[56],"in":[57,59,101,148],"practice,":[58],"part":[60],"due":[61],"its":[63,205],"simplicity.":[64],"Yet,":[65],"it":[66,105],"may":[67],"have":[68,112],"scalability":[69],"problems":[70],"when":[71],"we":[72,88,94,111],"move":[73],"into":[74,106],"many-core":[75],"computers,":[76],"requiring":[77],"fine-tuning":[78],"careful":[80],"programming":[81],"avoid":[83],"contention.":[84],"In":[85],"paper":[87],"present":[89,182],"discuss":[91],"modifications":[93],"made":[95],"lock-based":[98,136],"multi-version":[99],"Java,":[102],"turn":[104],"implementation":[109],"that":[110,126,169,195],"tested":[113],"scale":[115],"at":[116],"least":[117],"up":[118],"192":[120],"cores,":[121],"which":[123,203],"provides":[124],"results":[125],"compete":[127],"with,":[128],"sometimes":[130],"exceed,":[131],"some":[132],"today's":[134],"implementations.":[137],"The":[138],"new":[139,184],"algorithm":[142,187],"allows":[143,196],"write":[144],"transactions":[145],"proceed":[147],"parallel,":[149],"by":[150,163],"allowing":[151],"them":[152],"run":[154],"their":[155],"validation":[156],"phase":[157],"independently":[158],"each":[160],"other,":[161],"resorting":[164],"helping":[166],"from":[167],"threads":[168],"would":[170],"otherwise":[171],"be":[172],"waiting":[173],"commit,":[175],"during":[176],"write-back":[178],"phase.":[179],"We":[180],"also":[181],"garbage":[185],"collection":[186],"dispose":[189],"old":[191],"unused":[192],"object":[193],"versions":[194],"asynchronous":[198],"identification":[199],"unnecessary":[201],"versions,":[202],"minimizes":[204],"interference":[206],"with":[207],"rest":[209],"transactional":[212],"system.":[213]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":5},{"year":2020,"cited_by_count":6},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":2},{"year":2017,"cited_by_count":4},{"year":2016,"cited_by_count":6},{"year":2015,"cited_by_count":6},{"year":2014,"cited_by_count":13},{"year":2013,"cited_by_count":11},{"year":2012,"cited_by_count":9}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
