English
Related papers

Related papers: Warping Cache Simulation of Polyhedral Programs

200 papers

CPU caches introduce variations into the execution time of programs that can be exploited by adversaries to recover private information about users or cryptographic keys. Establishing the security of countermeasures against this threat…

Cryptography and Security · Computer Science 2017-05-12 Goran Doychev , Boris Köpf

Shared memory programming models usually provide worksharing and task constructs. The former relies on the efficient fork-join execution model to exploit structured parallelism; while the latter relies on fine-grained synchronization among…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-04-08 M. Maronas , K. Sala , S. Mateo , E. Ayguadé , V. Beltran Barcelona Supercomputing Center

Sequential computation is well understood but does not scale well with current technology. Within the next decade, systems will contain large numbers of processors with potentially thousands of processors per chip. Despite this, many…

Hardware Architecture · Computer Science 2015-11-17 James Hanlon

In this paper, we focus on modelling the timing aspects of binary programs running on architectures featuring caches and pipelines. The objective is to obtain a timed automaton model to compute tight bounds for the worst-case execution time…

Formal Languages and Automata Theory · Computer Science 2015-11-16 Franck Cassez , Pablo González de Aledo Marugán

Safety-critical embedded systems having to meet real-time constraints are expected to be highly predictable in order to guarantee at design time that certain timing deadlines will always be met. This requirement usually prevents designers…

Hardware Architecture · Computer Science 2011-11-09 Lars Wehmeyer , Peter Marwedel

In modern large-scale distributed systems, analytics jobs submitted by various users often share similar work, for example scanning and processing the same subset of data. Instead of optimizing jobs independently, which may result in…

Databases · Computer Science 2018-05-23 Pietro Michiardi , Damiano Carra , Sara Migliorini

As systems and applications grow more complex, detailed simulation takes an ever increasing amount of time. The prospect of increased simulation time resulting in slower design iteration forces architects to use simpler models, such as…

Hardware Architecture · Computer Science 2020-12-04 Patrick Lavin , Jeffrey Young , Rich Vuduc , Jonathan Beard

Application-level caching is a form of caching that has been increasingly adopted to satisfy performance and throughput requirements. The key idea is to store the results of a computation, to improve performance by reusing instead of…

Software Engineering · Computer Science 2020-10-27 Jhonny Mertz , Ingrid Nunes , Luca Della Toffola , Marija Selakovic , Michael Pradel

Memory simulators are used to estimate application performance on advanced memory systems, yet they may exhibit significant discrepancies compared to real hardware. This paper investigates two key questions: (1) what causes these…

Hardware Architecture · Computer Science 2026-04-21 Pouya Esmaili-Dokht , Arash Yadegari , Victor Xirau , Julian Pavon , Adrian Cristal , Eduard Ayguade , Petar Radojkovic

Due to decelerating gains in single-core CPU performance, computationally expensive simulations are increasingly executed on highly parallel hardware platforms. Agent-based simulations, where simulated entities act with a certain degree of…

Multiagent Systems · Computer Science 2018-07-04 Jiajian Xiao , Philipp Andelfinger , David Eckhoff , Wentong Cai , Alois Knoll

Efficient and faithful parallel simulation of large asynchronous systems is a challenging computational problem. It requires using the concept of local simulated times and a synchronization scheme. We study the scalability of massively…

Statistical Mechanics · Physics 2007-05-23 G. Korniss , M. A. Novotny , P. A. Rikvold , H. Guclu , Z. Toroczkai

For applications in worst-case execution time analysis and in security, it is desirable to statically classify memory accesses into those that result in cache hits, and those that result in cache misses. Among cache replacement policies,…

Programming Languages · Computer Science 2018-12-21 Claire Maïza , Valentin Touzeau , David Monniaux , Jan Reineke

The performance of data intensive applications is often dominated by their input/output (I/O) operations but the I/O stack of systems is complex and severely depends on system specific settings and hardware components. This situation makes…

Performance · Computer Science 2023-06-12 Masoud Gholami , Florian Schintke

In this paper, we propose an empirical method for evaluating the performance of parallel code. Our method is based on a simple idea that is surprisingly effective in helping to identify causes of poor performance, such as high…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-09-15 Umut A. Acar , Arthur Charguéraud , Mike Rainey

We present a novel class of methods to compute functions of matrices or their action on vectors that are suitable for parallel programming. Solving appropriate simple linear systems of equations in parallel (or computing the inverse of…

Numerical Analysis · Mathematics 2022-10-10 Sergio Blanes

Next-generation supercomputers will feature more hierarchical and heterogeneous memory systems with different memory technologies working side-by-side. A critical question is whether at large scale existing HPC applications and emerging…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-04-27 Ivy Bo Peng , Stefano Markidis , Erwin Laure , Gokcen Kestor , Roberto Gioiosa

We study matrix-matrix multiplication of two matrices, $A$ and $B$, each of size $n \times n$. This operation results in a matrix $C$ of size $n\times n$. Our goal is to produce $C$ as efficiently as possible given a cache: a 1-D limited…

Data Structures and Algorithms · Computer Science 2023-11-15 Neil Bhavikatti

Modeling data sharing in GPU programs is a challenging task because of the massive parallelism and complex data sharing patterns provided by GPU architectures. Better GPU caching efficiency can be achieved through careful task scheduling…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-10-04 Lingda Li , Ari B. Hayes , Stephen A. Hackler , Eddy Z. Zhang , Mario Szegedy , Shuaiwen Leon Song

The theory community has proposed several new heap variants in the recent past which have remained largely untested experimentally. We take the field back to the drawing board, with straightforward implementations of both classic and novel…

Data Structures and Algorithms · Computer Science 2014-03-04 Daniel H. Larkin , Siddhartha Sen , Robert E. Tarjan

Parametric linear programming is a central operation for polyhedral computations, as well as in certain control applications.Here we propose a task-based scheme for parallelizing it, with quasi-linear speedup over large problems.This type…

Computational Geometry · Computer Science 2020-10-01 Camille Coti , David Monniaux , Hang Yu