English
Related papers

Related papers: Collective Allocator Abstraction to Control Object…

200 papers

Disaggregated memory is a promising approach that addresses the limitations of traditional memory architectures by enabling memory to be decoupled from compute nodes and shared across a data center. Cloud platforms have deployed such…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-06-21 Nan Ding , Pieter Maris , Hai Ah Nam , Taylor Groves , Muaaz Gul Awan , LeAnn Lindsey , Christopher Daley , Oguz Selvitopi , Leonid Oliker , Nicholas Wright , Samuel Williams

Dynamic memory management requires special attention in programming. It should be fast and secure at the same time. This paper proposes a new randomized dynamic memory management algorithm designed to meet these requirements. Randomization…

Data Structures and Algorithms · Computer Science 2021-08-25 Irina Aleksandrovna Astrakhantseva , Roman Gennadevich Astrakhantsev , Arseny Viktorovich Mitin

Large language model (LLM) agents increasingly rely on accumulated memory to solve long-horizon decision-making tasks. However, most existing approaches store memory in fixed representations and reuse it at a single or implicit level of…

Artificial Intelligence · Computer Science 2026-01-13 Sirui Liang , Pengfei Cao , Jian Zhao , Wenhao Teng , Xiangwen Liao , Jun Zhao , Kang Liu

Approximate memory is a technique to mitigate the performance gap between memory subsystems and CPUs with its reduced access latency at a cost of data integrity. To gain benefit from approximate memory for realistic applications, it is…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-04-06 Soramichi Akiyama

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

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

Clustering is an unsupervised learning technique in which data or objects are grouped into sets based on some similarity measure. Most of the clustering algorithms assume that the main memory is infinite and can accommodate the set of…

Data Structures and Algorithms · Computer Science 2015-05-25 Pankaj Kumar Yadav , Sriniwas Pandey , Sraban Kumar Mohanty

Compute and memory are tightly coupled within each server in traditional datacenters. Large-scale datacenter operators have identified this coupling as a root cause behind fleet-wide resource underutilization and increasing Total Cost of…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-05-09 Hasan Al Maruf , Mosharaf Chowdhury

Disaggregating memory from compute offers the opportunity to better utilize stranded memory in cloud data centers. It is important to cache data in the compute nodes and maintain cache coherence across multiple compute nodes. However, the…

Databases · Computer Science 2026-01-14 Ruihong Wang , Jianguo Wang , Walid G. Aref

Despite the promise of alleviating the main memory bottleneck, and the existence of commercial hardware implementations, techniques for Near-Data Processing have seen relatively little real-world deployment. The idea has received renewed…

Operating Systems · Computer Science 2025-09-08 Zikai Liu , Jasmin Schult , Pengcheng Xu , Timothy Roscoe

Many interpretable AI approaches have been proposed to provide plausible explanations for a model's decision-making. However, configuring an explainable model that effectively communicates among computational modules has received less…

Machine Learning · Computer Science 2023-11-09 Jinyung Hong , Keun Hee Park , Theodore P. Pavlic

Data analytics applications transform raw input data into analytics-specific data structures before performing analytics. Unfortunately, such data ingestion step is often more expensive than analytics. In addition, various types of NVRAM…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-03-02 Keita Iwabuchi , Karim Youssef , Kaushik Velusamy , Maya Gokhale , Roger Pearce

Operating system kernels employ virtual memory subsystems, which use a CPU's memory management units (MMUs) to virtualize the addresses of memory regions Operating systems manipulate these virtualized memory mappings to isolate untrusted…

Programming Languages · Computer Science 2025-09-05 Ismail Kuru , Colin S. Gordon

HPC environments have traditionally been designed to meet the compute demand of scientific applications and data has only been a second order concern. With science moving toward data-driven discoveries relying more on correlations in data…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-01-22 Andre Luckow , Pradeep Mantha , Shantenu Jha

Memory disaggregation provides efficient memory utilization across network-connected systems. It allows a node to use part of memory in remote nodes in the same cluster. Recent studies have improved RDMA-based memory disaggregation systems,…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-09-07 Taekyung Heo , Seunghyo Kang , Sanghyeon Lee , Soojin Hwang , Jaehyuk Huh

We consider a resource allocation problem involving a large number of agents with individual constraints subject to privacy, and a central operator whose objective is to optimizing a global, possibly non-convex, cost while satisfying the…

Multiagent Systems · Computer Science 2019-03-08 Paulin Jacquot , Olivier Beaude , Pascal Benchimol , Stéphane Gaubert , Nadia Oudjane

We propose a hierarchical abstract domain for the analysis of free-list memory allocators that tracks shape and numerical properties about both the heap and the free lists. Our domain is based on Separation Logic extended with predicates…

Programming Languages · Computer Science 2016-08-22 Bin Fang , Mihaela Sighireanu

In C++, objects can be allocated in static memory, on the stack, or on the heap -- the latter being significantly more performance-costly than the former options. We hypothesized that programmers, particularly those involved in widely-used…

Programming Languages · Computer Science 2024-10-10 Roman Korostinskiy , Eugene Darashkevich , Roman Rusyaev , Yegor Bugayenko

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

There are numerous examples of problems in symbolic algebra in which the required storage grows far beyond the limitations even of the distributed RAM of a cluster. Often this limitation determines how large a problem one can solve in…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-06-11 Daniel Kunkle