English
Related papers

Related papers: $R^4$: A Racetrack Register File with Runtime Soft…

200 papers

Register allocation (mapping variables to processor registers or memory) and instruction scheduling (reordering instructions to increase instruction-level parallelism) are essential tasks for generating efficient assembly code in a…

Programming Languages · Computer Science 2019-06-10 Roberto Castañeda Lozano , Christian Schulte

Graph processing is used extensively in areas from social networking mining to web indexing. We demonstrate that the performance and dependability of such applications critically hinges on the graph data structure used, because a fixed,…

Programming Languages · Computer Science 2014-12-30 Amlan Kusum , Iulian Neamtiu , Rajiv Gupta

This paper presents a comprehensive analysis of performance trade offs between implementation choices for transaction runtime systems on persistent memory. We compare three implementations of transaction runtimes: undo logging, redo…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-04-04 Virendra Marathe , Achin Mishra , Amee Trivedi , Yihe Huang , Faisal Zaghloul , Sanidhya Kashyap , Margo Seltzer , Tim Harris , Steve Byan , Bill Bridge , Dave Dice

Data structures are a cornerstone of most modern programming languages. Whether they are provided via separate libraries, built into the language specification, or as part of the language's standard library -- data structures such as lists,…

Programming Languages · Computer Science 2025-03-03 Lukas Makor , Sebastian Kloibhofer , Peter Hofer , David Leopoldseder , Hanspeter Mössenböck

The memory capacity in edge devices is often limited due to constraints on cost, size, and power. Consequently, memory competition leads to inevitable page swapping in memory-constrained mixed-criticality edge devices, causing slow storage…

Operating Systems · Computer Science 2025-11-26 Meng-Chia Lee , Wen Sheng Lim , Yuan-Hao Chang , Tei-Wei Kuo

The current flash memory technology focuses on the cost minimization of its static storage capacity. However, the resulting approach supports a relatively small number of program-erase cycles. This technology is effective for consumer…

Information Theory · Computer Science 2015-01-05 Eyal En Gad , Eitan Yaakobi , Anxiao , Jiang , Jehoshua Bruck

With the emergence of Non-Volatile Memories (NVMs) and their shortcomings such as limited endurance and high power consumption in write requests, several studies have suggested hybrid memory architecture employing both Dynamic Random Access…

Operating Systems · Computer Science 2018-05-08 Reza Salkhordeh , Hossein Asadi

Runtime models provide a snapshot of a system at runtime at a desired level of abstraction. Via a causal connection to the modeled system and by employing model-driven engineering techniques, runtime models support schemes for (runtime)…

Software Engineering · Computer Science 2020-08-18 Lucas Sakizloglou , Sona Ghahremani , Matthias Barkowsky , Holger Giese

Due to the emergence of highly dynamic multimedia applications there is a need for flexible platforms and run-time scheduling support for embedded systems. Dynamic Reconfigurable Hardware (DRHW) is a promising candidate to provide this…

Hardware Architecture · Computer Science 2011-11-09 Javier Resano , Daniel Mozos , Francky Catthoor

Modern embedded computing platforms consist of a high amount of heterogeneous resources, which allows executing multiple applications on a single device. The number of running application on the system varies with time and so does the…

Systems and Control · Electrical Eng. & Systems 2020-02-19 Robert Khasanov , Jeronimo Castrillon

Randomized methods such as PRM and RRT are widely used in motion planning. However, in some cases, their running-time suffers from inherent instability, leading to ``catastrophic'' performance even for relatively simple instances. We apply…

Robotics · Computer Science 2025-08-05 Nancy Amato , Stav Ashur , Sariel Har-Peled%

GPU utilization, measured as occupancy, is limited by the parallel threads' combined usage of on-chip resources, such as registers and the programmer-managed shared memory. Higher resource demand means lower effective parallel thread count,…

Performance · Computer Science 2019-07-08 Putt Sakdhnagool , Amit Sabne , Rudolf Eigenmann

Compute-in-memory (CiM) is a promising approach to improving the computing speed and energy efficiency in dataintensive applications. Beyond existing CiM techniques of bitwise logic-in-memory operations and dot product operations, this…

Hardware Architecture · Computer Science 2023-01-03 Yiming Chen , Yushen Fu , Mingyen Lee , Sumitha George , Yongpan Liu , Vijaykrishnan Narayanan , Huazhong Yang , Xueqing Li

Memory tiering systems seek cost-effective memory scaling by adding multiple tiers of memory. For maximum performance, frequently accessed (hot) data must be placed close to the host in faster tiers and infrequently accessed (cold) data can…

Operating Systems · Computer Science 2025-08-07 Sujay Yadalam , Konstantinos Kanellis , Michael Swift , Shivaram Venkataraman

Many existing thermal management techniques focus on reducing the overall power consumption of the chip, and do not address location-specific temperature problems referred to as hotspots. We propose the use of dynamic runtime…

Hardware Architecture · Computer Science 2011-11-09 G. M. Link , N. Vijaykrishnan

Memory disaggregation is being considered as a strong alternative to traditional architecture to deal with the memory under-utilization in data centers. Disaggregated memory can adapt to dynamically changing memory requirements for the data…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-04-11 Amit Puri , John Jose , Tamarapalli Venkatesh

To process data that do not fit in RAM, conventional wisdom would suggest using distributed approaches. However, recent research has demonstrated virtual memory's strong potential in scaling up graph mining algorithms on a single machine.…

Machine Learning · Computer Science 2016-04-12 Dezhi Fang , Duen Horng Chau

Non-volatile memory (NVM) is a class of promising scalable memory technologies that can potentially offer higher capacity than DRAM at the same cost point. Unfortunately, the access latency and energy of NVM is often higher than those of…

Hardware Architecture · Computer Science 2018-05-01 HanBin Yoon , Justin Meza , Rachata Ausavarungnirun , Rachael A. Harding , Onur Mutlu

Register allocation is a much studied problem. A particularly important context for optimizing register allocation is within loops, since a significant fraction of the execution time of programs is often inside loop code. A variety of…

Programming Languages · Computer Science 2014-06-04 Lukasz Domagala , Fabrice Rastello , Sadayappan Ponnuswany , Duco Van Amstel

Dynamic Random Access Memory (DRAM) is the prevalent memory technology used to build main memory systems of almost all computers. A fundamental shortcoming of DRAM is the need to refresh memory cells to keep stored data intact. DRAM refresh…

Hardware Architecture · Computer Science 2023-06-29 Onur Mutlu