{"month":"09","publication_identifier":{"issn":["0304-3975"]},"keyword":["Concurrent data structure","kD-tree","Nearest neighbor search","Similarity search","Lock-free","Linearizability"],"publication_status":"published","citation":{"ama":"Chatterjee B, Walulya I, Tsigas P. Concurrent linearizable nearest neighbour search in LockFree-kD-tree. Theoretical Computer Science. 2021;886:27-48. doi:10.1016/j.tcs.2021.06.041","ista":"Chatterjee B, Walulya I, Tsigas P. 2021. Concurrent linearizable nearest neighbour search in LockFree-kD-tree. Theoretical Computer Science. 886, 27–48.","apa":"Chatterjee, B., Walulya, I., & Tsigas, P. (2021). Concurrent linearizable nearest neighbour search in LockFree-kD-tree. Theoretical Computer Science. Elsevier. https://doi.org/10.1016/j.tcs.2021.06.041","mla":"Chatterjee, Bapi, et al. “Concurrent Linearizable Nearest Neighbour Search in LockFree-KD-Tree.” Theoretical Computer Science, vol. 886, Elsevier, 2021, pp. 27–48, doi:10.1016/j.tcs.2021.06.041.","short":"B. Chatterjee, I. Walulya, P. Tsigas, Theoretical Computer Science 886 (2021) 27–48.","chicago":"Chatterjee, Bapi, Ivan Walulya, and Philippas Tsigas. “Concurrent Linearizable Nearest Neighbour Search in LockFree-KD-Tree.” Theoretical Computer Science. Elsevier, 2021. https://doi.org/10.1016/j.tcs.2021.06.041.","ieee":"B. Chatterjee, I. Walulya, and P. Tsigas, “Concurrent linearizable nearest neighbour search in LockFree-kD-tree,” Theoretical Computer Science, vol. 886. Elsevier, pp. 27–48, 2021."},"date_published":"2021-09-13T00:00:00Z","department":[{"_id":"DaAl"}],"year":"2021","title":"Concurrent linearizable nearest neighbour search in LockFree-kD-tree","intvolume":" 886","date_updated":"2023-08-10T14:27:43Z","page":"27-48","article_type":"original","language":[{"iso":"eng"}],"type":"journal_article","abstract":[{"lang":"eng","text":"The Nearest neighbour search (NNS) is a fundamental problem in many application domains dealing with multidimensional data. In a concurrent setting, where dynamic modifications are allowed, a linearizable implementation of the NNS is highly desirable.This paper introduces the LockFree-kD-tree (LFkD-tree ): a lock-free concurrent kD-tree, which implements an abstract data type (ADT) that provides the operations Add, Remove, Contains, and NNS. Our implementation is linearizable. The operations in the LFkD-tree use single-word read and compare-and-swap (Image 1 ) atomic primitives, which are readily supported on available multi-core processors. We experimentally evaluate the LFkD-tree using several benchmarks comprising real-world and synthetic datasets. The experiments show that the presented design is scalable and achieves significant speed-up compared to the implementations of an existing sequential kD-tree and a recently proposed multidimensional indexing structure, PH-tree."}],"external_id":{"isi":["000694718900004"]},"main_file_link":[{"open_access":"1","url":"https://publications.lib.chalmers.se/records/fulltext/232185/232185.pdf"}],"doi":"10.1016/j.tcs.2021.06.041","publication":"Theoretical Computer Science","date_created":"2021-08-08T22:01:31Z","scopus_import":"1","isi":1,"author":[{"full_name":"Chatterjee, Bapi","orcid":"0000-0002-2742-4028","first_name":"Bapi","last_name":"Chatterjee","id":"3C41A08A-F248-11E8-B48F-1D18A9856A87"},{"full_name":"Walulya, Ivan","first_name":"Ivan","last_name":"Walulya"},{"first_name":"Philippas","last_name":"Tsigas","full_name":"Tsigas, Philippas"}],"article_processing_charge":"No","quality_controlled":"1","user_id":"4359f0d1-fa6c-11eb-b949-802e58b17ae8","_id":"9827","day":"13","oa":1,"publisher":"Elsevier","status":"public","volume":886,"oa_version":"Submitted Version"}