English
Related papers

Related papers: Adaptive Lock-Free Data Structures in Haskell: A G…

200 papers

Standard neural network architectures are non-linear only by virtue of a simple element-wise activation function, making them both brittle and excessively large. In this paper, we consider methods for making the feed-forward layer more…

Machine Learning · Computer Science 2018-11-26 Sebastian Flennerhag , Hujun Yin , John Keane , Mark Elliot

Linearizability is the gold standard of correctness conditions for shared memory algorithms, and historically has been considered the practical equivalent of atomicity. However, it has been shown [1] that replacing atomic objects with…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-08-29 Sean Ovens , Philipp Woelfel

This paper focuses on data structures for multi-core reachability, which is a key component in model checking algorithms and other verification methods. A cornerstone of an efficient solution is the storage of visited states. In related…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-05-06 Alfons Laarman , Jaco van de Pol , Michael Weber

Data race conditions in multi-tasking software applications are prevented by serializing access to shared memory resources, ensuring data consistency and deterministic behavior. Traditionally tasks acquire and release locks to synchronize…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-01-24 K. Eric Harper , Thijmen de Gooijer

Persistent memory (PM) is an emerging class of storage technology that combines the benefits of DRAM and SSD. This characteristic inspires research on persistent objects in PM with fine-grained concurrency control. Among such objects,…

Programming Languages · Computer Science 2022-03-16 Kyeongmin Cho , Seungmin Jeon , Jeehoon Kang

We consider the task of constructing a data structure for associating a static set of keys with values, while allowing arbitrary output values for queries involving keys outside the set. Compared to hash tables, these so-called static…

Data Structures and Algorithms · Computer Science 2026-05-20 Stefan Hermann , Hans-Peter Lehmann , Giorgio Vinciguerra , Stefan Walzer

This paper is an exploration in a functional programming framework of {\em isomorphisms} between elementary data types (natural numbers, sets, multisets, finite functions, permutations binary decision diagrams, graphs, hypergraphs,…

Programming Languages · Computer Science 2009-01-19 Paul Tarau

Storing tabular data to balance storage and query efficiency is a long-standing research question in the database community. In this work, we argue and show that a novel DeepMapping abstraction, which relies on the impressive memorization…

Databases · Computer Science 2024-09-27 Lixi Zhou , K. Selçuk Candan , Jia Zou

In this paper, we give theoretically and practically efficient implementations of Big Atomics, i.e., $k$-word linearizable registers that support the load, store, and compare-and-swap (CAS) operations. While modern hardware supports $k = 1$…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-01-14 Daniel Anderson , Guy E. Blelloch , Siddhartha Jayanti

Hash tables are ubiquitous, and the choice of hash function, which maps a key to a bucket, is key to their performance. We argue that the predominant approach of fixing the hash function for the lifetime of the hash table is suboptimal and…

Data Structures and Algorithms · Computer Science 2026-02-09 Gábor Melis

Commutativity of data structure methods is of ongoing interest, with roots in the database community. In recent years commutativity has been shown to be a key ingredient to enabling multicore concurrency in contexts such as parallelizing…

Programming Languages · Computer Science 2020-04-21 Eric Koskinen , Kshitij Bansal

Graph algorithms applied in many applications, including social networks, communication networks, VLSI design, graphics, and several others, require dynamic modifications -- addition and removal of vertices and/or edges -- in the graph.…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-01-16 Bapi Chatterjee , Sathya Peri , Muktikanta Sa , Nandini Singhal

A challenge for programming language research is to design and implement multi-threaded low-level languages providing static guarantees for memory safety and freedom from data races. Towards this goal, we present a concurrent language…

Programming Languages · Computer Science 2010-02-05 Prodromos Gerakios , Nikolaos Papaspyrou , Konstantinos Sagonas

There are two intertwined factors that affect performance of concurrent data structures: the ability of processes to access the data in parallel and the cost of synchronization. It has been observed that for a large class of…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-05-10 Vitaly Aksenov , Petr Kuznetsov

Transformer architectures are the backbone of the modern AI revolution. However, they are based on simply stacking the same blocks in dozens of layers and processing information sequentially from one block to another. In this paper, we…

Computation and Language · Computer Science 2024-12-24 Prateek Verma , Mert Pilanci

In this paper we present a new static data type inference algorithm for logic programming. Without the need of declaring types for predicates, our algorithm is able to automatically assign types to predicates which, in most cases,…

Programming Languages · Computer Science 2021-08-17 João Barbosa , Mário Florido , Vítor Santos Costa

Federated learning is an emerging research paradigm enabling collaborative training of machine learning models among different organizations while keeping data private at each institution. Despite recent progress, there remain fundamental…

Machine Learning · Computer Science 2022-04-15 Liangqiong Qu , Yuyin Zhou , Paul Pu Liang , Yingda Xia , Feifei Wang , Ehsan Adeli , Li Fei-Fei , Daniel Rubin

The ability to express a program as a hierarchical composition of parts is an essential tool in managing the complexity of software and a key abstraction this provides is to separate the representation of data from the computation. Many…

Programming Languages · Computer Science 2012-10-04 James Hanlon , Simon J. Hollis , David May

Obtaining good performance when programming heterogeneous computing platforms poses significant challenges. We present a program transformation environment, implemented in Haskell, where architecture-agnostic scientific C code with semantic…

Programming Languages · Computer Science 2017-01-13 Salvador Tamarit , Julio Mariño , Guillermo Vigueras , Manuel Carro

We define a new set of primitive operations that greatly simplify the implementation of non-blocking data structures in asynchronous shared-memory systems. The new operations operate on a set of Data-records, each of which contains multiple…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-12-20 Trevor Brown , Faith Ellen , Eric Ruppert