English
Related papers

Related papers: Don't sit on the fence: A static analysis approach…

200 papers

Modern architectures provide weaker memory consistency guarantees than sequential consistency. These weaker guarantees allow programs to exhibit behaviours where the program statements appear to have executed out of program order.…

Software Engineering · Computer Science 2015-06-03 Saurabh Joshi , Daniel Kroening

Cache coherence protocols based on self-invalidation and self-downgrade have recently seen increased popularity due to their simplicity, potential performance efficiency, and low energy consumption. However, such protocols result in memory…

Logic in Computer Science · Computer Science 2023-06-22 Parosh Aziz Abdulla , Mohamed Faouzi Atig , Stefanos Kaxiras , Carl Leonardsson , Alberto Ros , Yunyun Zhu

CXL shared memory and persistent memory allow the contents of memory to persist beyond crashes. Stores to persistent or CXL memory are typically not immediately made persistent; developers must manually flush the corresponding cache lines…

Software Engineering · Computer Science 2025-09-25 Yutong Guo , Weiyu Luo , Brian Demsky

We study the psync complexity of concurrent sets in the non-volatile shared memory model. Flush instructions are used in non-volatile memory to force shared state to be written back to non-volatile memory and must typically be accompanied…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-09-12 Gaetano Coccimiglio , Trevor Brown , Srivatsan Ravi

Mapping programs from one architecture to another plays a key role in technologies such as binary translation, decompilation, emulation, virtualization, and application migration. Although multicore architectures are ubiquitous, the…

Programming Languages · Computer Science 2020-09-09 Soham Chakraborty

The memory system of a modern embedded processor consumes a large fraction of total system energy. We explore a range of different configuration options and show that a reconfigurable design can make better use of the resources available to…

Hardware Architecture · Computer Science 2016-01-08 Daniel Bates , Alex Chadwick , Robert Mullins

Fence instructions are fundamental primitives that ensure consistency in a weakly consistent shared memory multi-core processor. The execution cost of these instructions is significant and adds a non-trivial overhead to parallel programs.…

Hardware Architecture · Computer Science 2017-12-07 Pranith Kumar , Prasun Gera , Hyojong Kim , Hyesoon Kim

Current compilers implement security features and optimizations that require nontrivial semantic reasoning about pointers and memory allocation: the program after the insertion of the security feature, or after applying the optimization,…

Logic in Computer Science · Computer Science 2023-12-14 David Monniaux

Accurate simulation techniques are indispensable to efficiently propose new memory or architectural organizations. As implementing new hardware concepts in real systems is often not feasible, cycle-accurate simulators employed together with…

Hardware Architecture · Computer Science 2024-02-02 Nicolas Bueno , Fernando Castro , Luis Pinuel , Jose Ignacio Gomez-Perez , Francky Catthoor

Persistent Memory (PM) is a new storage technology thatbrings high performance, byte addressability, and persistency for a lesser cost than DRAM. Due to cache volatility and store reordering, developers must use explicit instructions (e.g.:…

Emerging Technologies · Computer Science 2026-03-03 Sebastião Amaro , João Gonçalves , Miguel Matos

The C/C++11 (C11) standard offers a spectrum of ordering guarantees on memory access operations. The combinations of such orderings pose a challenge in developing correct and efficient weak memory programs. A common solution to preclude…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-08-03 Sanjana Singh , Divyanjali Sharma , Ishita Jaju , Subodh Sharma

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

Dynamic analysis, through rehosting, is an important capability for security assessment in embedded systems software. Existing rehosting techniques aim to provide high-fidelity execution by accurately emulating hardware and peripheral…

Static analysis is a classical technique for improving software security and software quality in general. Fairly recently, a new static analyzer was implemented in the GNU Compiler Collection (GCC). The present paper uses the GCC's analyzer…

Software Engineering · Computer Science 2025-12-05 Jukka Ruohonen , Mubashrah Saddiqa , Krzysztof Sierszecki

Static performance estimation is essential during compile-time analysis, yet traditional runtime-based methods are costly and platform-dependent. We investigate mems, the number of memory accesses, as a static and architecture-independent…

Software Engineering · Computer Science 2025-05-13 Liwei Zhang , Baoquan Cui , Xutong Ma , Jian Zhang

Conventional approaches to image de-fencing suffer from non-robust fence detection and are limited to processing images of static scenes. In this position paper, we propose an automatic de-fencing algorithm for images of dynamic scenes. We…

Computer Vision and Pattern Recognition · Computer Science 2016-12-13 Sankaraganesh Jonna , Krishna K. Nakka , Rajiv R. Sahay

Multiprocess systems, including grid systems, multiprocessors and multicore computers, incorporate a variety of specialized hardware and software mechanisms, which speed computation, but result in complex memory behavior. As a consequence,…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-06-04 Steven Cheng , Lisa Higham , Jalal Kawash

It is often said that one of the biggest limitations on computer performance is memory bandwidth (i.e."the memory wall problem"). In this position paper, I argue that if historical trends in computing evolution (where growth in available…

Operating Systems · Computer Science 2011-05-11 Niall Douglas

The dependency on the correct functioning of embedded systems is rapidly growing, mainly due to their wide range of applications, such as micro-grids, automotive device control, health care, surveillance, mobile devices, and consumer…

Logic in Computer Science · Computer Science 2017-03-01 Lucas Cordeiro

Taking photographs ''in-the-wild'' is often hindered by fence obstructions that stand between the camera user and the scene of interest, and which are hard or impossible to avoid. De-fencing is the algorithmic process of automatically…

Computer Vision and Pattern Recognition · Computer Science 2023-01-26 Stavros Tsogkas , Fengjia Zhang , Allan Jepson , Alex Levinshtein
‹ Prev 1 2 3 10 Next ›