Nachshon Cohen

dblp:71/9893 · DBLP profile ↗
← Back
31ranked-venue papers
20as first author
7since 2021 · last 2026
0000-0001-8302-2739ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 11 · 6 first-author · 1 since 2021Software engineering, systems software and programming languages · 9 · 8 first-authorDatabases, data management, data science and information retrieval · 4 · 1 first-author · 3 since 2021Theory of computation · 4 · 4 first-authorArtificial intelligence and machine learning · 3 · 1 first-author · 3 since 2021Security and privacy · 1Applied, interdisciplinary, general and emerging computing · 1
YearPublicationVenuePosition
2026 Personalized Autocompletion of Interactions with LLM-Based Chatbots
Shani Goren, Oren Kalinsky, Tomer Stav, Nachshon Cohen, Yuri Rapoport, Yaron Fairstein, Ram Yazdi, Alexander Libov, Guy Kushilevitz
ECIR (2)4
2024 InDi: Informative and Diverse Sampling for Dense Retrieval
Nachshon Cohen, Hedda Cohen Indelman, Yaron Fairstein, Guy Kushilevitz
ECIR (3)1
2024 Quality Matters: Evaluating Synthetic Data for Tool-Using LLMs
abstract
Training large language models (LLMs) for external tool usage is a rapidly expanding field, with recent research focusing on generating synthetic data to address the shortage of available data.However, the absence of systematic data quality checks poses complications for properly training and testing models.To that end, we propose two approaches for assessing the reliability of data for training LLMs to use external tools.The first approach uses intuitive, human-defined correctness criteria.The second approach uses a model-driven assessment with in-context evaluation.We conduct a thorough evaluation of data quality on two popular benchmarks, followed by an extrinsic evaluation that showcases the impact of data quality on model performance.Our results demonstrate that models trained on high-quality data outperform those trained on unvalidated data, even when trained with a smaller quantity of data.These findings empirically support the significance of assessing and ensuring the reliability of training data for tool-using LLMs.
Shadi Iskander, Sofia Tolmach, Ori Shapira, Nachshon Cohen, Zohar S. Karnin
EMNLP4
2024 Evaluating D-MERIT of Partial-annotation on Information Retrieval
abstract
Royi Rassin, Yaron Fairstein, Oren Kalinsky, Guy Kushilevitz, Nachshon Cohen, Alexander Libov, Yoav Goldberg. Proceedings of the 2024 Conference on Empirical Methods in Natural Language Processing. 2024.
Royi Rassin, Yaron Fairstein, Oren Kalinsky, Guy Kushilevitz, Nachshon Cohen, Alexander Libov, Yoav Goldberg
EMNLP5
2024 POSTER: RELAX: Durable Data Structures with Swift Recovery
abstract
Recent non-volatile main memory technology gave rise to an abundance of research on building persistent data structures, whose content can be recovered after a system crash. While there has been significant progress in making durable data structures efficient, shortening the length of the recovery phase after a crash has not received much attention. In this paper we present the RELAX general transformation. RELAX generates lock-free durable data structures that provide the best of both worlds: almost zero recovery time and high performance.
Almog Zur, Nachshon Cohen, Michal Friedman 0001, Erez Petrank
PPoPP2
2022 SDR: Efficient Neural Re-ranking using Succinct Document Representation
abstract
BERT based ranking models have achieved superior performance on various information retrieval tasks.However, the large number of parameters and complex self-attention operations come at a significant latency overhead.To remedy this, recent works propose late-interaction architectures, which allow precomputation of intermediate document representations, thus reducing latency.Nonetheless, having solved the immediate latency issue, these methods now introduce storage costs and network fetching latency, which limit their adoption in real-life production systems.In this work, we propose the Succinct Document Representation (SDR) scheme that computes highly compressed intermediate document representations, mitigating the storage/network issue.Our approach first reduces the dimension of token representations by encoding them using a novel autoencoder architecture that uses the document's textual content in both the encoding and decoding phases.After this token encoding step, we further reduce the size of the document representations using modern quantization techniques.Evaluation on MSMARCO's passage rereranking task show that compared to existing approaches using compressed document representations, our method is highly efficient, achieving 4x-11.6xhigher compression rates for the same ranking quality.Similarly, on the TREC CAR dataset, we achieve 7.7x higher compression rate for the same ranking quality.
Nachshon Cohen, Amit Portnoy, Besnik Fetahu, Amir Ingber
ACL (1)1
2022 IR Evaluation and Learning in the Presence of Forbidden Documents
abstract
Many IR collections contain forbidden documents (F-docs), i.e. documents that should not be retrieved to the searcher. In an ideal scenario F-docs are clearly flagged, hence the ranker can filter them out, guaranteeing that no F-doc will be exposed. However, in real-world scenarios, filtering algorithms are prone to errors. Therefore, an IR evaluation system should also measure filtering quality in addition to ranking quality. Typically, filtering is considered as a classification task and is evaluated independently of the ranking quality. However, due to the mutual affinity between the two, it is desirable to evaluate ranking quality while filtering decisions are being made. In this work we propose nDCGf, a novel extension of the nDCGmin metric[14], which measures both ranking and filtering quality of the search results. We show both theoretically and empirically that while nDCGmin is not suitable for the simultaneous ranking and filtering task, nDCGf is a reliable metric in this case.
David Carmel, Nachshon Cohen, Amir Ingber, Elad Kravi
SIGIR2
2020 Voice-based Reformulation of Community Answers
abstract
Community Question Answering (CQA) websites, such as Stack Exchange1 or Quora2, allow users to freely ask questions and obtain answers from other users, i.e., the community. Personal assistants, such as Amazon Alexa or Google Home, can also exploit CQA data to answer a broader range of questions and increase customers’ engagement. However, the voice-based interaction poses new challenges to the Question Answering scenario. Even assuming that we are able to retrieve a previously asked question that perfectly matches the user’s query, we cannot simply read its answer to the user. A major limitation is the answer length. Reading these answers to the user is cumbersome and boring. Furthermore, many answers contain non-voice-friendly parts, such as images, or URLs.
Simone Filice, Nachshon Cohen, David Carmel
WWW2
2019 Fine-Grain Checkpointing with In-Cache-Line Logging
abstract
Non-Volatile Memory offers the possibility of implementing high-performance, durable data structures. However, achieving performance comparable to well-designed data structures in non-persistent (transient) memory is difficult, primarily because of the cost of ensuring the order in which memory writes reach NVM.\@ Often, this requires flushing data to NVM and waiting a full memory round-trip time. In this paper, we introduce two new techniques: Fine-Grained Checkpointing, which ensures a consistent, quickly recoverable data structure in NVM after a system failure, and In-Cache-Line Logging, an undo-logging technique that enables recovery of earlier state without requiring cache-line flushes in the normal case. We implemented these techniques in the Masstree data structure, making it persistent and demonstrating the ease of applying them to a highly optimized system and their low (5.9-15.4%) runtime overhead cost.
Nachshon Cohen, David T. Aksun, Hillel Avni, James R. Larus
ASPLOS1
2019 OneFile: A Wait-Free Persistent Transactional Memory
abstract
A persistent transactional memory (PTM) library provides an easy-to-use interface to programmers for using byte-addressable non-volatile memory (NVM). Previously proposed PTMs have, so far, been blocking. We present OneFile, the first wait-free PTM with integrated wait-free memory reclamation. We have designed and implemented two variants of the OneFile, one with lock-free progress and the other with bounded wait-free progress. We additionally present software transactional memory (STM) implementations of the lock-free and wait-free algorithms targeting volatile memory. Each of our PTMs and STMs is implemented as a single C++ file with ~1,000 lines of code, making them versatile to use. Equipped with these PTMs and STMs, non-expert developers can design and implement their own lock-free and wait-free data structures on NVM, thus making lock-free programming accessible to common software developers.
Pedro Ramalhete, Andreia Correia, Pascal Felber, Nachshon Cohen
DSN4
2019 Efficient lock-free durable sets
abstract
Non-volatile memory is expected to co-exist or replace DRAM in upcoming architectures. Durable concurrent data structures for non-volatile memories are essential building blocks for constructing adequate software for use with these architectures. In this paper, we propose a new approach for durable concurrent sets and use this approach to build the most efficient durable hash tables available today. Evaluation shows a performance improvement factor of up to 3.3x over existing technology.
Yoav Zuriel, Michal Friedman 0001, Gali Sheffi, Nachshon Cohen, Erez Petrank
Proc. ACM Program. Lang.4
2018 Reducing transaction aborts by looking to the future
abstract
Transactions are widely used in database engines and they becoming increasingly useful as a general synchronization technique for multicore machines [1]. Transactional systems allow a programmer to encapsulate multiple operations inside a transaction. All these operations appear to be executed atomically or not at all.
Nachshon Cohen, Erez Petrank, James R. Larus
PPoPP1
2018 The Inherent Cost of Remembering Consistently
abstract
Non-volatile memory (NVM) promises fast, byte-addressable and durable storage, with raw access latencies in the same order of magnitude as DRAM. But in order to take advantage of the durability of NVM, programmers need to design \em persistent objects which maintain consistent state across system crashes and restarts. Concurrent implementations of persistent objects typically make heavy use of expensive persistent fence instructions to order NVM accesses, thus negating some of the performance benefits of NVM. This raises the question of the minimal number of persistent fence instructions required to implement a persistent object. We answer this question in the deterministic lock-free case by providing lower and upper bounds on the required number of fence instructions. We obtain our upper bound by presenting a new universal construction that implements durably any object using at most one persistent fence per update operation invoked. Our lower bound states that in the worst case, each process needs to issue at least one persistent fence per update operation invoked.
Nachshon Cohen, Rachid Guerraoui, Igor Zablotchi
SPAA1
2018 Approximating Steiner trees and forests with minimum number of Steiner points
Nachshon Cohen, Zeev Nutov
J. Comput. Syst. Sci.1
2018 Every data structure deserves lock-free memory reclamation
abstract
Memory-management support for lock-free data structures is well known to be a tough problem. Recent work has successfully reduced the overhead of such schemes. However, applying memory-management support to a data structure remains complex and, in many cases, requires redesigning the data structure. In this paper, we present the first lock-free memory-management scheme that is applicable to general (arbitrary) lock-free data structures and that can be applied automatically via a compiler plug-in. In addition to the simplicity of incorporating to data structures, this scheme provides low overhead and does not rely on the lock freedom of any OS services.
Nachshon Cohen
Proc. ACM Program. Lang.1
2018 Object-oriented recovery for non-volatile memory
abstract
New non-volatile memory (NVM) technologies enable direct, durable storage of data in an application's heap. Durable, randomly accessible memory facilitates the construction of applications that do not lose data at system shutdown or power failure. Existing NVM programming frameworks provide mechanisms to consistently capture a running application's state. They do not, however, fully support object-oriented languages or ensure that the persistent heap is consistent with the environment when the application is restarted. In this paper, we propose a new NVM language extension and runtime system that supports object-oriented NVM programming and avoids the pitfalls of prior approaches. At the heart of our technique is object reconstruction, which transparently restores and reconstructs a persistent object's state during program restart. It is implemented in NVMReconstruction, a Clang/LLVM extension and runtime library that provides: (i) transient fields in persistent objects, (ii) support for virtual functions and function pointers, (iii) direct representation of persistent pointers as virtual addresses, and (iv) type-specific reconstruction of a persistent object during program restart. In addition, NVMReconstruction supports updating an application's code, even if this causes objects to expand, by providing object migration. NVMReconstruction also can compact the persistent heap to reduce fragmentation. In experiments, we demonstrate the versatility and usability of object reconstruction and its low runtime performance cost.
Nachshon Cohen, David T. Aksun, James R. Larus
Proc. ACM Program. Lang.1
2017 A GPU-Friendly Skiplist Algorithm
abstract
We propose a design for a fine-grained lock-based skiplist optimized for Graphics Processing Units (GPUs). While GPUs are often used to accelerate streaming parallel computations, it remains a significant challenge to efficiently offload concurrent computations with more complicated data-irregular access and fine-grained synchronization. Natural building blocks for such computations would be concurrent data structures, such as skiplists, which are widely used in general purpose computations. Our design utilizes array-based nodes which are accessed and updated by warp-cooperative functions, thus taking advantage of the fact that GPUs are most efficient when memory accesses are coalesced and execution divergence is minimized. The proposed design has been implemented, and measurements demonstrate improved performance of up to 11.6x over skiplist designs for the GPU existing today.
Nurit Moscovici, Nachshon Cohen, Erez Petrank
PACT2
2017 The Teleportation Design Pattern for Hardware Transactional Memory
abstract
We identify a design pattern for concurrent data structures, called teleportation, that uses best- effort hardware transactional memory to speed up certain kinds of legacy concurrent data struc- tures. Teleportation unifies and explains several existing data structure designs, and it serves as the basis for novel approaches to reducing the memory traffic associated with fine-grained locking, and with hazard pointer management for memory reclamation.
Nachshon Cohen, Maurice Herlihy, Erez Petrank, Elias Wald
OPODIS1
2017 POSTER: State Teleportation via Hardware Transactional Memory
abstract
State teleportation is a new technique for exploiting hardware transactional memory (HTM) to improve existing synchronization and memory management schemes for highly-concurrent data structures. When applied to fine-grained locking, a thread holding the lock for a node launches a hardware transaction that traverses multiple successor nodes, acquires the lock for the last node reached, and releases the lock on the starting node, skipping lock acquisitions for intermediate nodes. When applied to lock-free data structures, a thread visiting a node protected by a hazard pointer launches a hardware transaction that traverses multiple successor nodes, and publishes the hazard pointer only for the last node reached, skipping the memory barriers needed to publish intermediate hazard pointers. Experimental results show that these applications of state teleportation can substantially increase the performance of both lock-based and lock-free data structures.
Nachshon Cohen, Maurice Herlihy, Erez Petrank, Elias Wald
PPoPP1
2017 Layout Lock: A Scalable Locking Paradigm for Concurrent Data Layout Modifications
abstract
Data-structures can benefit from dynamic data layout modifications when the size or the shape of the data structure changes during the execution, or when different phases in the program execute different workloads. However, in a modern multi-core environment, layout modifications involve costly synchronization overhead. In this paper we propose a novel layout lock that incurs a negligible overhead for reads and a small overhead for updates of the data structure. We then demonstrate the benefits of layout changes and also the advantages of the layout lock as its supporting synchronization mechanism for two data structures. In particular, we propose a concurrent binary search tree, and a concurrent array set, that benefit from concurrent layout modifications using the proposed layout lock. Experience demonstrates performance advantages and integration simplicity.
Nachshon Cohen, Arie Tal, Erez Petrank
PPoPP1
2017 POSTER: A GPU-Friendly Skiplist Algorithm
abstract
We propose a design for a fine-grained lock-based skiplist optimized for Graphics Processing Units (GPUs). While GPUs are often used to accelerate streaming parallel computations, it remains a significant challenge to efficiently offload concurrent computations with more complicated data-irregular access and fine-grained synchronization. Natural building blocks for such computations would be concurrent data structures, such as skiplists, which are widely used in general purpose computations. Our design utilizes array-based nodes which are accessed and updated by warp-cooperative functions, thus taking advantage of the fact that GPUs are most efficient when memory accesses are coalesced and execution divergence is minimized. The proposed design has been implemented, and measurements demonstrate improved performance of up to 2.6x over skiplist designs for the GPU existing today.
Nurit Moscovici, Nachshon Cohen, Erez Petrank
PPoPP2
2017 Efficient logging in non-volatile memory by exploiting coherency protocols
abstract
Non-volatile memory technologies such as PCM, ReRAM and STT-RAM allow data to be saved to persistent storage significantly faster than hard drives or SSDs. Many of the use cases for non-volatile memory requires persistent logging since it enables a set of operations to execute in an atomic manner. However, a logging protocol must handle reordering, which causes a write to reach the non-volatile memory before a previous write operation. In this paper, we show that reordering results from two parts of the system: the out-of-order execution in the CPU and the cache coherence protocol. By carefully considering the properties of these reorderings, we present a logging protocol that requires only one round trip to non-volatile memory while avoiding expensive computations, thus increasing performance. We also show how the logging protocol can be extended to building a durable set (hash map) that also requires a single round trip to non-volatile memory for inserting, updating, or deleting operations.
Nachshon Cohen, Michal Friedman 0001, James R. Larus
Proc. ACM Program. Lang.1
2017 Limitations of Partial Compaction: Towards Practical Bounds
abstract
Compaction of a managed heap is a costly operation to be avoided as much as possible in commercial runtimes. Instead, partial compaction is often used to defragment parts of the heap and avoid space blowup. Previous study of compaction limitation provided some initial asymptotic bounds but no implications for practical systems. In this work, we extend the theory to obtain better bounds and make them strong enough to become meaningful for modern systems.
Nachshon Cohen, Erez Petrank
ACM Trans. Program. Lang. Syst.1
2016 CBPQ: High Performance Lock-Free Priority Queue
Anastasia Braginsky, Nachshon Cohen, Erez Petrank
Euro-Par2
2015 Data structure aware garbage collector
abstract
Garbage collection may benefit greatly from knowledge about program behavior, but most managed languages do not provide means for the programmer to deliver such knowledge. In this work we propose a very simple interface that requires minor programmer effort and achieves substantial performance and scalability improvements. In particular, we focus on the common use of data structures or collections for organizing data on the heap. We let the program notify the collector which classes represent nodes of data structures and also when such nodes are being removed from their data structures. The data-structure aware (DSA) garbage collector uses this information to improve performance, locality, and load balancing. Experience shows that this interface requires a minor modification of the application. Measurements show that for some significant benchmarks this interface can dramatically reduce the time spent on garbage collection and also improve the overall program performance.
Nachshon Cohen, Erez Petrank
ISMM1
2015 Automatic memory reclamation for lock-free data structures
abstract
Lock-free data-structures are widely employed in practice, yet designing lock-free memory reclamation for them is notoriously difficult. In particular, all known lock-free reclamation schemes are ``manual'' in the sense that the developer has to specify when nodes have retired and may be reclaimed. Retiring nodes adequately is non-trivial and often requires the modification of the original lock-free algorithm. In this paper we present an automatic lock-free reclamation scheme for lock-free data-structures in the spirit of a mark-sweep garbage collection. The proposed algorithm works with any normalized lock-free algorithm and with no need for the programmer to retire nodes or make changes to the algorithm. Evaluation of the proposed scheme on a linked-list and a hash table shows that it performs similarly to the best manual (lock-free) memory reclamation scheme.
Nachshon Cohen, Erez Petrank
OOPSLA1
2015 Efficient Memory Management for Lock-Free Data Structures with Optimistic Access
abstract
Lock-free data structures achieve high responsiveness, aid scalability, and avoid deadlocks and livelocks. But providing memory management support for such data structures without foiling their progress guarantees is difficult. Often, designers employ the hazard pointers technique, which may impose a high performance overhead.
Nachshon Cohen, Erez Petrank
SPAA1
2014 Approximating Steiner Trees and Forests with Minimum Number of Steiner Points
Nachshon Cohen, Zeev Nutov
WAOA1
2013 Limitations of partial compaction: towards practical bounds
abstract
Compaction of a managed heap is considered a costly operation, and is avoided as much as possible in commercial runtimes. Instead, partial compaction is often used to defragment parts of the heap and avoid space blow up. Previous study of compaction limitation provided some initial asymptotic bounds but no implications for practical systems. In this work, we extend the theory to obtain better bounds and make them strong enough to become meaningful for modern systems.
Nachshon Cohen, Erez Petrank
PLDI1
2013 A (1+ln2)(1+ln2)-approximation algorithm for minimum-cost 2-edge-connectivity augmentation of trees with constant radius
Nachshon Cohen, Zeev Nutov
Theor. Comput. Sci.1
2011 A (1 + ln 2)-Approximation Algorithm for Minimum-Cost 2-Edge-Connectivity Augmentation of Trees with Constant Radius
Nachshon Cohen, Zeev Nutov
APPROX-RANDOM1