English
Related papers

Related papers: Reference Capabilities for Safe Parallel Array Pro…

200 papers

The standard dual-numbers construction works well for forward-mode automatic differentiation (AD) and is attractive due to its simplicity; recently, it also has been adapted to reverse-mode AD, but practical performance, especially on array…

Programming Languages · Computer Science 2025-07-18 Tom Smeding , Mikołaj Konarski , Simon Peyton Jones , Andrew Fitzgibbon

Array programming languages allow for concise and generic formulations of numerical algorithms, thereby providing a huge potential for program optimisation such as fusion, parallelisation, etc. One of the restrictions that these languages…

Programming Languages · Computer Science 2017-10-12 Artjoms Sinkarovs , Sven-Bodo Scholz

Modern hardware systems are heavily underutilized when running large-scale graph applications. While many in-memory graph frameworks have made substantial progress in optimizing these applications, we show that it is still possible to…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-01-15 Yunming Zhang , Vladimir Kiriansky , Charith Mendis , Matei Zaharia , Saman Amarasinghe

This paper summarizes the idea of Subarray-Level Parallelism (SALP) in DRAM, which was published in ISCA 2012, and examines the work's significance and future potential. Modern DRAMs have multiple banks to serve multiple memory requests in…

Hardware Architecture · Computer Science 2018-05-08 Yoongu Kim , Vivek Seshadri , Donghyuk Lee , Jamie Liu , Onur Mutlu

In the Python world, NumPy arrays are the standard representation for numerical data. Here, we show how these arrays enable efficient implementation of numerical computations in a high-level language. Overall, three techniques are applied…

Mathematical Software · Computer Science 2011-03-14 Stefan Van Der Walt , S. Chris Colbert , Gaël Varoquaux

The AI revolution is data driven. AI "data wrangling" is the process by which unusable data is transformed to support AI algorithm development (training) and deployment (inference). Significant time is devoted to translating diverse data…

Databases · Computer Science 2020-01-22 Jeremy Kepner , Vijay Gadepally , Hayden Jananthan , Lauren Milechin , Siddharth Samsi

Recent breakthroughs in AI capability have been attributed to increasingly sophisticated architectures and alignment techniques, but a simpler principle may explain these advances: memory makes computation universal. Memory enables…

Machine Learning · Computer Science 2024-12-24 Erik Garrison

We extend Random Access, a fundamental operation that enables efficient search and exploration algorithms, to the modern interactive data systems based on Ranked Retrieval and Similarity Search, where orderings are dynamically defined over…

Data Structures and Algorithms · Computer Science 2026-05-26 Mohsen Dehghankar , Abolfazl Asudeh , Raghav Mittal , Suraj Shetiya , Gautam Das

Many task-parallel applications can benefit from attempting to execute tasks in a specific order, as for instance indicated by priorities associated with the tasks. We present three lock-free data structures for priority scheduling with…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-12-10 Martin Wimmer , Daniel Cederman , Francesco Versaci , Jesper Larsson Träff , Philippas Tsigas

Parallelism is often required for performance. In these situations an excess of non-determinism is harmful as it means the program can have several different behaviours or even different results. Even in domains such as high-performance…

Programming Languages · Computer Science 2022-10-28 Laure Gonnord , Ludovic Henrio , Lionel Morel , Gabriel Radanne

Conventional sorting algorithms make use of such data structures as array, file and list which define access methods of the items to be sorted. Such traditional methods as exchange sort, divide and conquer sort, selection sort and insertion…

Distributed, Parallel, and Cluster Computing · Computer Science 2012-09-17 Samuel King Opoku

Sequence alignment is a fundamental process in computational biology which identifies regions of similarity in biological sequences. With the exponential growth in the volume of data in bioinformatics databases, the time, processing power,…

Hardware Architecture · Computer Science 2025-07-31 Nasrin Akbari , Mehdi Modarressi , Alireza Khadem

To design efficient parallel algorithms, some recent papers showed that many sequential iterative algorithms can be directly parallelized but there are still challenges in achieving work-efficiency and high-parallelism. Work-efficiency can…

Data Structures and Algorithms · Computer Science 2022-05-27 Zheqi Shen , Zijin Wan , Yan Gu , Yihan Sun

Researchers working on the automatic parallelization of programs have long known that too much parallelism can be even worse for performance than too little, because spawning a task to be run on another CPU incurs overheads.…

Programming Languages · Computer Science 2011-09-08 Paul Bone , Zoltan Somogyi , Peter Schachte

Linearizability, the traditional correctness condition for concurrent data structures is considered insufficient for the non-volatile shared memory model where processes recover following a crash. For this crash-recovery shared memory…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-12-08 Ohad Ben-Baruch , Srivatsan Ravi

In his article "Powerlist: A Structure for Parallel Recursion" Jayadev Misra wrote: "Many data parallel algorithms Fast Fourier Transform, Batcher's sorting schemes and prefix sum -exhibit recursive structure. We propose a data structure,…

Distributed, Parallel, and Cluster Computing · Computer Science 2011-09-30 Roman Gitlin

Most work on the verification of concurrent objects for shared memory assumes sequential consistency, but most multicore processors support only weak memory models that do not provide sequential consistency. Furthermore, most verification…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-04-25 Simon Doherty , John Derrick

The development of the Parallel ROOT Facility, PROOF, enables a physicist to analyze and understand much larger data sets on a shorter time scale. It makes use of the inherent parallelism in event data and implements an architecture that…

Data Analysis, Statistics and Probability · Physics 2007-05-23 Maarten Ballintijn , Rene Brun , Fons Rademakers , Gunther Roland

Polymorphism in programming languages enables code reuse. Here, we show that polymorphism has broad applicability far beyond computations for technical computing: parallelism in distributed computing, presentation of visualizations of…

Programming Languages · Computer Science 2014-11-07 Jiahao Chen , Alan Edelman

This paper introduces a novel disk array architecture, designated RAID-0e (Resilient Striping Array), designed to superimpose a low-overhead fault tolerance layer upon traditional RAID 0 (striping). By employing a logically and physically…

Computational Engineering, Finance, and Science · Computer Science 2026-01-08 Yanzhao Jia , Zhaobo Wu , Zheyi Cao , Shihao Ji , Xu Tianhao , Zihui Song