English
Related papers

Related papers: Getting a Handle on Unmanaged Memory

200 papers

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

Almost all modern imperative programming languages include operations for dynamically manipulating the heap, for example by allocating and deallocating objects, and by updating reference fields. In the presence of recursive procedures and…

Programming Languages · Computer Science 2012-12-18 Jurriaan Rot , Irina Măriuca Asăvoae , Frank de Boer , Marcello M. Bonsangue , Dorel Lucanu

Heap layout manipulation is integral to exploiting heap-based memory corruption vulnerabilities. In this paper we present the first automatic approach to the problem, based on pseudo-random black-box search. Our approach searches for the…

Cryptography and Security · Computer Science 2018-09-05 Sean Heelan , Tom Melham , Daniel Kroening

Modern architectures require applications to make effective use of caches to achieve high performance and hide memory latency. This in turn requires careful consideration of placement of data in memory to exploit spatial locality, leverage…

Programming Languages · Computer Science 2019-01-24 Juliana Franco , Alexandros Tasos , Sophia Drossopoulou , Tobias Wrigstad , Susan Eisenbach

Partitioning applications between NDP and host CPU cores causes inter-segment data movement overhead, which is caused by moving data generated from one segment (e.g., instructions, functions) and used in consecutive segments. Prior works…

Byte-addressable, non-volatile memory (NVM) is emerging as a promising technology. To facilitate its wide adoption, employing NVM in managed runtimes like JVM has proven to be an effective approach (i.e., managed NVM). However, such an…

Programming Languages · Computer Science 2022-05-16 Daixuan Li , Benjamin Reidys , Jinghan Sun , Thomas Shull , Josep Torrellas , Jian Huang

Use-after-free (UAF) is a critical and prevalent problem in memory unsafe languages. While many solutions have been proposed, balancing security, run-time cost, and memory overhead (an impossible trinity) is hard. In this paper, we show one…

Cryptography and Security · Computer Science 2024-05-27 Ruizhe Wang , Meng Xu , N. Asokan

The Partitioned Global Address Space (PGAS) programming model strikes a balance between the locality-aware, but explicit, message-passing model and the easy-to-use, but locality-agnostic, shared memory model. However, the PGAS rich memory…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-09-11 Olivier Serres , Abdullah Kayi , Ahmad Anbar , Tarek El-Ghazawi

The heap is a critical and widely used component of many applications. Due to its dynamic nature, combined with the complexity of heap management algorithms, it is also a frequent target for security exploits. To enhance the heap's…

Cryptography and Security · Computer Science 2024-06-06 Zhenpeng Lin , Zheng Yu , Ziyi Guo , Simone Campanoni , Peter Dinda , Xinyu Xing

While memory corruption bugs stemming from the use of unsafe programming languages are an old and well-researched problem, the resulting vulnerabilities still dominate real-world exploitation today. Various mitigations have been proposed to…

Cryptography and Security · Computer Science 2021-08-20 Emanuel Q. Vintila , Philipp Zieris , Julian Horsch

Software complexity has increased over the years. One common way to tackle this complexity during development is to encapsulate features into a shared library. This allows developers to reuse already implemented features instead of…

Cryptography and Security · Computer Science 2019-09-17 Nicolai Davidsson , Andre Pawlowski , Thorsten Holz

Memory tiering in datacenters does not achieve its full potential due to hotness fragmentation -- the intermingling of hot and cold objects within memory pages. This fragmentation prevents page-based reclamation systems from distinguishing…

Operating Systems · Computer Science 2025-10-23 Vinay Banakar , Suli Yang , Kan Wu , Andrea C. Arpaci-Dusseau , Remzi H. Arpaci-Dusseau , Kimberly Keeton

Porting applications to new hardware or programming models is a tedious and error prone process. Every help that eases these burdens is saving developer time that can then be invested into the advancement of the application itself instead…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-11-07 Erik Zenker , Benjamin Worpitz , René Widera , Axel Huebl , Guido Juckeland , Andreas Knüpfer , Wolfgang E. Nagel , Michael Bussmann

Sparse linear algebra is central to many scientific programs, yet compilers fail to optimize it well. High-performance libraries are available, but adoption costs are significant. Moreover, libraries tie programs into vendor-specific…

Performance · Computer Science 2020-01-29 Philip Ginsbach , Bruce Collie , Michael F. P. O'Boyle

Running Large Language Models (LLMs) on edge devices is constrained by high compute and memory demands posing a barrier for real-time applications in sectors like healthcare, education, and embedded systems. Current solutions such as…

Spatial dataflow architectures like the Cerebras Wafer-Scale Engine deliver exceptional performance in AI and scientific computing by distributing scratchpad memory across hundreds of thousands of processing elements (PEs). Yet programming…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-04-28 Lukas Gianinazzi , Tal Ben-Nun , Torsten Hoefler

Elasticity is one important feature in modern cloud computing systems and can result in computation failure or significantly increase computing time. Such elasticity means that virtual machines over the cloud can be preempted under a short…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-07-26 Mingyue Ji , Xiang Zhang , Kai Wan

In software development, the prevalence of unsafe languages such as C and C++ introduces potential vulnerabilities, especially within the heap, a pivotal component for dynamic memory allocation. Despite its significance, heap management…

Cryptography and Security · Computer Science 2024-09-24 Zheng Yu , Ganxiang Yang , Xinyu Xing

Reinforcement learning has been successful in many tasks ranging from robotic control, games, energy management etc. In complex real world environments with sparse rewards and long task horizons, sample efficiency is still a major…

Artificial Intelligence · Computer Science 2021-10-12 Bharat Prakash , Nicholas Waytowich , Tim Oates , Tinoosh Mohsenin

We consider the problem of reducing the memory required to run lazy first-order functional programs. Our approach is to analyze programs for liveness of heap-allocated data. The result of the analysis is used to preserve only live data---a…

Programming Languages · Computer Science 2016-05-03 Prasanna Kumar. K , Amitabha Sanyal , Amey Karkare
‹ Prev 1 2 3 10 Next ›