{"id":"https://openalex.org/W4393115826","doi":"https://doi.org/10.1007/s10766-024-00766-z","title":"Yet Another Lock-Free Atom Table Design for Scalable Symbol Management in Prolog","display_name":"Yet Another Lock-Free Atom Table Design for Scalable Symbol Management in Prolog","publication_year":2024,"publication_date":"2024-03-23","ids":{"openalex":"https://openalex.org/W4393115826","doi":"https://doi.org/10.1007/s10766-024-00766-z"},"language":"en","primary_location":{"id":"doi:10.1007/s10766-024-00766-z","is_oa":true,"landing_page_url":"http://dx.doi.org/10.1007/s10766-024-00766-z","pdf_url":"https://link.springer.com/content/pdf/10.1007/s10766-024-00766-z.pdf","source":{"id":"https://openalex.org/S148521650","display_name":"International Journal of Parallel Programming","issn_l":"0885-7458","issn":["0885-7458","1573-7640"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319900","host_organization_name":"Springer Science+Business Media","host_organization_lineage":["https://openalex.org/P4310319900","https://openalex.org/P4310319965"],"host_organization_lineage_names":["Springer Science+Business Media","Springer Nature"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"International Journal of Parallel Programming","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"hybrid","oa_url":"https://link.springer.com/content/pdf/10.1007/s10766-024-00766-z.pdf","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5038592676","display_name":"Pedro Moreno","orcid":"https://orcid.org/0000-0003-3745-5845"},"institutions":[{"id":"https://openalex.org/I182534213","display_name":"Universidade do Porto","ror":"https://ror.org/043pwc612","country_code":"PT","type":"education","lineage":["https://openalex.org/I182534213"]},{"id":"https://openalex.org/I4210166615","display_name":"INESC TEC","ror":"https://ror.org/05fa8ka61","country_code":"PT","type":"nonprofit","lineage":["https://openalex.org/I4210125590","https://openalex.org/I4210166615"]}],"countries":["PT"],"is_corresponding":true,"raw_author_name":"Pedro Moreno","raw_affiliation_strings":["CRACS/INESC TEC and Department of Computer Science, Faculty of Sciences, University of Porto, Rua do Campo Alegre, 1021/1055, 4169-007, Porto, Portugal"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"CRACS/INESC TEC and Department of Computer Science, Faculty of Sciences, University of Porto, Rua do Campo Alegre, 1021/1055, 4169-007, Porto, Portugal","institution_ids":["https://openalex.org/I182534213","https://openalex.org/I4210166615"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5066419786","display_name":"Miguel Areias","orcid":"https://orcid.org/0000-0003-1589-3174"},"institutions":[{"id":"https://openalex.org/I182534213","display_name":"Universidade do Porto","ror":"https://ror.org/043pwc612","country_code":"PT","type":"education","lineage":["https://openalex.org/I182534213"]},{"id":"https://openalex.org/I4210166615","display_name":"INESC TEC","ror":"https://ror.org/05fa8ka61","country_code":"PT","type":"nonprofit","lineage":["https://openalex.org/I4210125590","https://openalex.org/I4210166615"]}],"countries":["PT"],"is_corresponding":false,"raw_author_name":"Miguel Areias","raw_affiliation_strings":["CRACS/INESC TEC and Department of Computer Science, Faculty of Sciences, University of Porto, Rua do Campo Alegre, 1021/1055, 4169-007, Porto, Portugal"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"CRACS/INESC TEC and Department of Computer Science, Faculty of Sciences, University of Porto, Rua do Campo Alegre, 1021/1055, 4169-007, Porto, Portugal","institution_ids":["https://openalex.org/I182534213","https://openalex.org/I4210166615"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5007895512","display_name":"Ricardo Rocha","orcid":"https://orcid.org/0000-0003-4502-8835"},"institutions":[{"id":"https://openalex.org/I182534213","display_name":"Universidade do Porto","ror":"https://ror.org/043pwc612","country_code":"PT","type":"education","lineage":["https://openalex.org/I182534213"]},{"id":"https://openalex.org/I4210166615","display_name":"INESC TEC","ror":"https://ror.org/05fa8ka61","country_code":"PT","type":"nonprofit","lineage":["https://openalex.org/I4210125590","https://openalex.org/I4210166615"]}],"countries":["PT"],"is_corresponding":false,"raw_author_name":"Ricardo Rocha","raw_affiliation_strings":["CRACS/INESC TEC and Department of Computer Science, Faculty of Sciences, University of Porto, Rua do Campo Alegre, 1021/1055, 4169-007, Porto, Portugal"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"CRACS/INESC TEC and Department of Computer Science, Faculty of Sciences, University of Porto, Rua do Campo Alegre, 1021/1055, 4169-007, Porto, Portugal","institution_ids":["https://openalex.org/I182534213","https://openalex.org/I4210166615"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5059093687","display_name":"V\u0131\u0301tor Santos Costa","orcid":"https://orcid.org/0000-0002-3344-8237"},"institutions":[{"id":"https://openalex.org/I182534213","display_name":"Universidade do Porto","ror":"https://ror.org/043pwc612","country_code":"PT","type":"education","lineage":["https://openalex.org/I182534213"]},{"id":"https://openalex.org/I4210166615","display_name":"INESC TEC","ror":"https://ror.org/05fa8ka61","country_code":"PT","type":"nonprofit","lineage":["https://openalex.org/I4210125590","https://openalex.org/I4210166615"]}],"countries":["PT"],"is_corresponding":false,"raw_author_name":"V\u00edtor Santos Costa","raw_affiliation_strings":["CRACS/INESC TEC and Department of Computer Science, Faculty of Sciences, University of Porto, Rua do Campo Alegre, 1021/1055, 4169-007, Porto, Portugal"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"CRACS/INESC TEC and Department of Computer Science, Faculty of Sciences, University of Porto, Rua do Campo Alegre, 1021/1055, 4169-007, Porto, Portugal","institution_ids":["https://openalex.org/I182534213","https://openalex.org/I4210166615"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5038592676"],"corresponding_institution_ids":["https://openalex.org/I182534213","https://openalex.org/I4210166615"],"apc_list":{"value":2890,"currency":"USD","value_usd":2890},"apc_paid":{"value":2890,"currency":"USD","value_usd":2890},"fwci":0.4332,"has_fulltext":true,"cited_by_count":2,"citation_normalized_percentile":{"value":0.60528921,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":94,"max":96},"biblio":{"volume":"52","issue":"3","first_page":"187","last_page":"206"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":0.9991000294685364,"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":0.9991000294685364,"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/T10682","display_name":"Quantum Computing Algorithms and Architecture","score":0.9890999794006348,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9846000075340271,"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/computer-science","display_name":"Computer science","score":0.8168613314628601},{"id":"https://openalex.org/keywords/prolog","display_name":"Prolog","score":0.8014669418334961},{"id":"https://openalex.org/keywords/lock","display_name":"Lock (firearm)","score":0.7230643033981323},{"id":"https://openalex.org/keywords/table","display_name":"Table (database)","score":0.6153630614280701},{"id":"https://openalex.org/keywords/scalability","display_name":"Scalability","score":0.6135443449020386},{"id":"https://openalex.org/keywords/symbol","display_name":"Symbol (formal)","score":0.5998498201370239},{"id":"https://openalex.org/keywords/theory-of-computation","display_name":"Theory of computation","score":0.5478070974349976},{"id":"https://openalex.org/keywords/atom","display_name":"Atom (system on chip)","score":0.4745562672615051},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.43271148204803467},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.4254497289657593},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3920722007751465},{"id":"https://openalex.org/keywords/arithmetic","display_name":"Arithmetic","score":0.32394838333129883},{"id":"https://openalex.org/keywords/database","display_name":"Database","score":0.2762981057167053},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.1051476001739502}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8168613314628601},{"id":"https://openalex.org/C81721847","wikidata":"https://www.wikidata.org/wiki/Q163468","display_name":"Prolog","level":2,"score":0.8014669418334961},{"id":"https://openalex.org/C174839445","wikidata":"https://www.wikidata.org/wiki/Q1134386","display_name":"Lock (firearm)","level":2,"score":0.7230643033981323},{"id":"https://openalex.org/C45235069","wikidata":"https://www.wikidata.org/wiki/Q278425","display_name":"Table (database)","level":2,"score":0.6153630614280701},{"id":"https://openalex.org/C48044578","wikidata":"https://www.wikidata.org/wiki/Q727490","display_name":"Scalability","level":2,"score":0.6135443449020386},{"id":"https://openalex.org/C134400042","wikidata":"https://www.wikidata.org/wiki/Q2372244","display_name":"Symbol (formal)","level":2,"score":0.5998498201370239},{"id":"https://openalex.org/C24858836","wikidata":"https://www.wikidata.org/wiki/Q844718","display_name":"Theory of computation","level":2,"score":0.5478070974349976},{"id":"https://openalex.org/C58312451","wikidata":"https://www.wikidata.org/wiki/Q4817200","display_name":"Atom (system on chip)","level":2,"score":0.4745562672615051},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.43271148204803467},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4254497289657593},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3920722007751465},{"id":"https://openalex.org/C94375191","wikidata":"https://www.wikidata.org/wiki/Q11205","display_name":"Arithmetic","level":1,"score":0.32394838333129883},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.2762981057167053},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.1051476001739502},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.0},{"id":"https://openalex.org/C78519656","wikidata":"https://www.wikidata.org/wiki/Q101333","display_name":"Mechanical engineering","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1007/s10766-024-00766-z","is_oa":true,"landing_page_url":"http://dx.doi.org/10.1007/s10766-024-00766-z","pdf_url":"https://link.springer.com/content/pdf/10.1007/s10766-024-00766-z.pdf","source":{"id":"https://openalex.org/S148521650","display_name":"International Journal of Parallel Programming","issn_l":"0885-7458","issn":["0885-7458","1573-7640"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319900","host_organization_name":"Springer Science+Business Media","host_organization_lineage":["https://openalex.org/P4310319900","https://openalex.org/P4310319965"],"host_organization_lineage_names":["Springer Science+Business Media","Springer Nature"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"International Journal of Parallel Programming","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1007/s10766-024-00766-z","is_oa":true,"landing_page_url":"http://dx.doi.org/10.1007/s10766-024-00766-z","pdf_url":"https://link.springer.com/content/pdf/10.1007/s10766-024-00766-z.pdf","source":{"id":"https://openalex.org/S148521650","display_name":"International Journal of Parallel Programming","issn_l":"0885-7458","issn":["0885-7458","1573-7640"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319900","host_organization_name":"Springer Science+Business Media","host_organization_lineage":["https://openalex.org/P4310319900","https://openalex.org/P4310319965"],"host_organization_lineage_names":["Springer Science+Business Media","Springer Nature"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"International Journal of Parallel Programming","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G3758789529","display_name":null,"funder_award_id":"SFRH/BD/143261/2019","funder_id":"https://openalex.org/F4320334779","funder_display_name":"Funda\u00e7\u00e3o para a Ci\u00eancia e a Tecnologia"},{"id":"https://openalex.org/G6105681291","display_name":"INESC TEC - Institute for Systems and Computer Engineering, Technology and Science (INESC TEC)","funder_award_id":"LA/P/0063/2020","funder_id":"https://openalex.org/F4320334779","funder_display_name":"Funda\u00e7\u00e3o para a Ci\u00eancia e a Tecnologia"}],"funders":[{"id":"https://openalex.org/F4320324086","display_name":"Universidade do Porto","ror":"https://ror.org/043pwc612"},{"id":"https://openalex.org/F4320334779","display_name":"Funda\u00e7\u00e3o para a Ci\u00eancia e a Tecnologia","ror":"https://ror.org/00snfqn58"}],"has_content":{"grobid_xml":false,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4393115826.pdf"},"referenced_works_count":15,"referenced_works":["https://openalex.org/W1579154664","https://openalex.org/W1604179321","https://openalex.org/W1984187667","https://openalex.org/W2084802221","https://openalex.org/W2129086731","https://openalex.org/W2135372254","https://openalex.org/W2212080168","https://openalex.org/W2337480916","https://openalex.org/W2404017579","https://openalex.org/W2488002180","https://openalex.org/W2768054212","https://openalex.org/W3124499836","https://openalex.org/W3157196506","https://openalex.org/W4232288931","https://openalex.org/W4281255555"],"related_works":["https://openalex.org/W2108333633","https://openalex.org/W1575115589","https://openalex.org/W4210725620","https://openalex.org/W2496036477","https://openalex.org/W2089952282","https://openalex.org/W1850723825","https://openalex.org/W2033552629","https://openalex.org/W185202434","https://openalex.org/W2100626957","https://openalex.org/W1669708373"],"abstract_inverted_index":{"Abstract":[0],"Prolog":[1,50],"systems":[2],"rely":[3],"on":[4],"an":[5],"atom":[6,44],"table":[7,45],"for":[8,24],"symbol":[9,70],"management,":[10],"which":[11],"is":[12,22],"usually":[13],"implemented":[14],"as":[15],"a":[16,31,34,53],"dynamically":[17,116],"resizeable":[18],"hash":[19,118],"table.":[20,119],"This":[21],"ideal":[23],"single":[25,104],"threaded":[26,105],"execution,":[27],"but":[28],"can":[29],"become":[30],"bottleneck":[32],"in":[33,47,63,103],"multi-threaded":[35],"scenario.":[36],"In":[37],"this":[38],"work,":[39],"we":[40],"replace":[41],"the":[42,48,74,95,112],"original":[43,113],"implementation":[46,76,99],"YAP":[49],"system":[51],"with":[52],"lock-free":[54,97],"hash-based":[55],"data":[56],"structure,":[57],"named":[58],"Lock-free":[59],"Hash":[60],"Tries":[61],"(LFHT),":[62],"order":[64],"to":[65,83,86,89],"provide":[66],"efficient":[67],"and":[68,88,107],"scalable":[69],"management.":[71],"Being":[72],"lock-free,":[73],"new":[75,96],"also":[77],"provides":[78],"better":[79,101,109],"guarantees,":[80],"namely,":[81],"immunity":[82],"priority":[84],"inversion,":[85],"deadlocks":[87],"livelocks.":[90],"Performance":[91],"results":[92,102],"show":[93],"that":[94],"LFHT":[98],"has":[100],"execution":[106],"much":[108],"scalability":[110],"than":[111],"lock":[114],"based":[115],"resizing":[117]},"counts_by_year":[{"year":2024,"cited_by_count":2}],"updated_date":"2026-07-23T08:03:31.855105","created_date":"2025-10-10T00:00:00"}
