English
Related papers

Related papers: Randomized C/C++ dynamic memory allocator

200 papers

For the last thirty years, a large variety of memory allocators have been proposed. Since performance, memory usage and energy consumption of each memory allocator differs, software engineers often face difficult choices in selecting the…

Operating Systems · Computer Science 2024-06-25 José L. Risco-Martín , J. Manuel Colmenar , David Atienza , J. Ignacio Hidalgo

Applications making excessive use of single-object based data structures (such as linked lists, trees, etc...) can see a drop in efficiency over a period of time due to the randomization of nodes in memory. This slow down is due to the…

Data Structures and Algorithms · Computer Science 2021-10-22 Dhruv Matani , Gaurav Menghani

Safe memory reclamation is crucial to memory safety for optimistic and lock-free concurrent data structures in non garbage collected programming languages. However, several challenges arise in designing an ideal safe memory reclamation…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-09-03 Ajay Singh

Modern consumer devices must execute multimedia applications that exhibit high resource utilization. In order to efficiently execute these applications, the dynamic memory subsystem needs to be optimized. This complex task can be tackled in…

Hardware Architecture · Computer Science 2024-03-08 José L. Risco-Martín , J. Manuel Colmenar , J. Ignacio Hidalgo , Juan Lanchares , Josefa Díaz

Programmers using native languages such as C, C++, or Rust can implement custom memory allocation strategies to improve execution time. In their paper titled "Reconsidering Custom Memory Allocation" almost 25 years ago, Berger et al. showed…

Programming Languages · Computer Science 2026-05-19 Nicolas van Kempen , Emery D. Berger

Using custom memory allocators is an efficient performance optimization technique. However, dependency on a custom allocator can introduce several maintenance-related issues. We present lessons learned from the industry and provide critical…

Software Engineering · Computer Science 2022-12-23 Gunnar Kudrjavets , Jeff Thomas , Aditya Kumar , Nachiappan Nagappan , Ayushi Rastogi

Our goal is to efficiently solve the dynamic memory allocation problem in a concurrent setting where processes run asynchronously. On $p$ processes, we can support allocation and free for fixed-sized blocks with $O(1)$ worst-case time per…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-08-11 Guy E. Blelloch , Yuanhao Wei

Memory errors continue to be a critical concern for programs written in low-level programming languages such as C and C++. Many different memory error defenses have been proposed, each with varying trade-offs in terms of overhead,…

Cryptography and Security · Computer Science 2025-05-27 Sai Dhawal Phaye , Gregory J. Duck , Roland H. C. Yap , Trevor E. Carlson

Programs written in C/C++ can suffer from serious memory fragmentation, leading to low utilization of memory, degraded performance, and application failure due to memory exhaustion. This paper introduces Mesh, a plug-in replacement for…

Programming Languages · Computer Science 2020-04-30 Bobby Powers , David Tench , Emery D. Berger , Andrew McGregor

Adversarial Patrolling games form a subclass of Security games where a Defender moves between locations, guarding vulnerable targets. The main algorithmic problem is constructing a strategy for the Defender that minimizes the worst damage…

Artificial Intelligence · Computer Science 2026-04-22 Vojtěch Kůr , Vít Musil , Vojtěch Řehák

In shared-memory concurrent programming, shared resources can be protected using synchronization mechanisms such as monitors or channels. The connection between these mechanisms and the resources they protect is, however, only given…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-07-07 Mischael Schill , Sebastian Nanz , Bertrand Meyer

At the allocation and deallocation of small objects with fixed size, the standard allocator of the runtime system has commonly a worse time performance compared to allocators adapted for a special application field. We propose a memory…

Programming Languages · Computer Science 2016-11-09 Christian Schuessler , Roland Gruber

This paper introduces a resource allocation framework specifically tailored for addressing the problem of dynamic placement (or pinning) of parallelized applications to processing units. Under the proposed setup each thread of the…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-06-28 Georgios C. Chasparis , Michael Rossbory

Differential computation (DC) is a highly general incremental computation/view maintenance technique that can maintain the output of an arbitrary and possibly recursive dataflow computation upon changes to its base inputs. As such, it is a…

Databases · Computer Science 2022-08-02 Khaled Ammar , Siddhartha Sahu , Semih Salihoglu , M. Tamer Ozsu

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

DRAM-based main memory and its associated components increasingly account for a significant portion of application performance bottlenecks and power budget demands inside the computing ecosystem. To alleviate the problems of storage density…

Cryptography and Security · Computer Science 2019-02-12 Fan Yao , Guru Venkataramani

We demonstrate the advantages of randomization in coherent quantum dynamical control. For systems which are either time-varying or require decoupling cycles involving a large number of operations, we find that simple randomized protocols…

Quantum Physics · Physics 2009-11-13 Lea F. Santos , Lorenza Viola

In spam and malware detection, attackers exploit randomization to obfuscate malicious data and increase their chances of evading detection at test time; e.g., malware code is typically obfuscated using random strings or byte sequences to…

Machine Learning · Computer Science 2016-09-07 Samuel Rota Bulò , Battista Biggio , Ignazio Pillai , Marcello Pelillo , Fabio Roli

The C/C++ memory model provides an interface and execution model for programmers of concurrent (shared-variable) code. It provides a range of mechanisms that abstract from underlying hardware memory models -- that govern how multicore…

Programming Languages · Computer Science 2022-04-08 Robert J. Colvin

The present von Neumann computing paradigm involves a significant amount of information transfer between a central processing unit (CPU) and memory, with concomitant limitations in the actual execution speed. However, it has been recently…

Emerging Technologies · Computer Science 2014-07-03 Fabio Lorenzo Traversa , Fabrizio Bonani , Yuriy V. Pershin , Massimiliano Di Ventra
‹ Prev 1 2 3 10 Next ›