English
Related papers

Related papers: Roomy: A System for Space Limited Computations

200 papers

Space is a circuit oriented, spatial programming language designed to exploit the massive parallelism available in a novel formal model of computation called the Synchronic A-Ram, and physically related FPGA and reconfigurable…

Computation and Language · Computer Science 2010-08-31 Alex V Berka

Crary and Sullivan's Relaxed Memory Calculus (RMC) proposed a new declarative approach for writing low-level shared memory concurrent programs in the presence of modern relaxed-memory multi-processor architectures and optimizing compilers.…

Programming Languages · Computer Science 2019-04-12 Michael J. Sullivan , Karl Crary , Salil Joshi

Programming for distributed memory machines has always been a tedious task, but necessary because compilers have not been sufficiently able to optimize for such machines themselves. Molly is an extension to the LLVM compiler toolchain that…

Programming Languages · Computer Science 2014-09-09 Michael Kruse

Computer algebra systems are complex software systems that cover a wide range of scientific and practical problems. However, the absolute coverage cannot be achieved. Often, it is required to create a user extension for an existing computer…

Mathematical Software · Computer Science 2020-05-12 Migran N. Gevorkyan , Anna V. Korolkova , Dmitry S. Kulyabov , Leonid A. Sevastianov

We introduce Rambrain, a user space library that manages memory consumption of your code. Using Rambrain you can overcommit memory over the size of physical memory present in the system. Rambrain takes care of temporarily swapping out data…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-06-08 Maximilian Imgrund , Alexander Arth

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 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

Choosing the best memory layout for each hardware architecture is increasingly important as more and more programs become memory bound. For portable codes that run across heterogeneous hardware architectures, the choice of the memory layout…

Performance · Computer Science 2024-04-15 Bernhard Manfred Gruber

A novel language system has given rise to promising alternatives to standard formal and processor network models of computation. An interstring linked with a abstract machine environment, shares sub-expressions, transfers data, and…

Programming Languages · Computer Science 2010-05-31 Alexander Victor Berka

Common implementations of core memory allocation components, like the Linux buddy system, handle concurrent allocation/release requests by synchronizing threads via spin-locks. This approach is clearly not prone to scale with large thread…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-05-22 Romolo Marotta , Mauro Ianni , Alessandro Pellegrini , Andrea Scarselli , Francesco Quaglia

Space-filling experimental design techniques are commonly used in many computer modeling and simulation studies to explore the effects of inputs on outputs. This research presents raxpy, a Python package that leverages expressive annotation…

Mathematical Software · Computer Science 2025-01-08 Neil Ranly , Torrey Wagner

Cumulative memory -- the sum of space used per step over the duration of a computation -- is a fine-grained measure of time-space complexity that was introduced to analyze cryptographic applications like password hashing. It is a more…

Computational Complexity · Computer Science 2023-07-06 Paul Beame , Niels Kornerup

A novel language system has given rise to promising alternatives to standard formal and processor network models of computation. An interstring linked with a abstract machine environment, shares sub-expressions, transfers data, and…

Programming Languages · Computer Science 2010-07-30 Alexander Victor Berka

The performance gap between CPU and memory widens continuously. Choosing the best memory layout for each hardware architecture is increasingly important as more and more programs become memory bound. For portable codes that run across…

Memory latency, bandwidth, capacity, and energy increasingly limit performance. In this paper, we reconsider proposed system architectures that consist of huge (many-terabyte to petabyte scale) memories shared among large numbers of CPUs.…

Hardware Architecture · Computer Science 2025-09-24 Samuel Dayo , Shuhan Liu , Peijing Li , Philip Levis , Subhasish Mitra , Thierry Tambe , David Tennenhouse , H. -S. Philip Wong

Among the paradigms for parallel and distributed computing, the one popularized with Linda, and based on tuple spaces, is one of the least used, despite the fact of being intuitive, easy to understand and to use. A tuple space is a…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-12-12 Vitaly Buravlev , Rocco De Nicola , Claudio Antares Mezzina

In modern runtime systems, memory layout calculations are hand-coded in systems languages. Primitives in these languages are not powerful enough to describe a rich set of layouts, leading to reliance on ad-hoc macros, numerous interrelated…

Programming Languages · Computer Science 2019-09-13 Karl Cronburg , Samuel Z. Guyer

In this era of large-scale data, distributed systems built on top of clusters of commodity hardware provide cheap and reliable storage and scalable processing of massive data. Here, we review recent work on developing and implementing…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-07-28 Jiyan Yang , Xiangrui Meng , Michael W. Mahoney

Data structures and algorithms are essential building blocks for programs, and \emph{distributed data structures}, which automatically partition data across multiple memory locales, are essential to writing high-level parallel programs.…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-06-06 Benjamin Brock , Robert Cohn , Suyash Bakshi , Tuomas Karna , Jeongnim Kim , Mateusz Nowak , Łukasz Ślusarczyk , Kacper Stefanski , Timothy G. Mattson

Many cluster management systems (CMSs) have been proposed to share a single cluster with multiple distributed computing systems. However, none of the existing approaches can handle distributed machine learning (ML) workloads given the…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-06-19 Peng Sun , Yonggang Wen , Ta Nguyen Binh Duong , Shengen Yan
‹ Prev 1 2 3 10 Next ›