Calipers: A Criticality-aware Framework for Modeling Processor Performance

01/15/2022
by   Hossein Golestani, et al.
1

Computer architecture design space is vast and complex. Tools are needed to explore new ideas and gain insights quickly, with low efforts and at a desired accuracy. We propose Calipers, a criticality-based framework to model key abstractions of complex architectures and a program's execution using dynamic event-dependence graphs. By applying graph algorithms, Calipers can track instruction and event dependencies, compute critical paths, and analyze architecture bottlenecks. By manipulating the graph, Calipers enables architects to investigate a wide range of Instruction Set Architecture (ISA) and microarchitecture design choices/"what-if" scenarios during both early- and late-stage design space exploration without recompiling and rerunning the program. Calipers can model in-order and out-of-order microarchitectures, structural hazards, and different types of ISAs, and can evaluate multiple ideas in a single run. Modeling algorithms are described in detail. We apply Calipers to explore and gain insights in complex microarchitectural and ISA ideas for RISC and EDGE processors, at lower effort than cycle-accurate simulators and with comparable accuracy. For example, among a variety of investigations presented in the paper, experiments show that targeting only a fraction of critical loads can help realize most benefits of value prediction.

READ FULL TEXT
research
03/18/2018

Towards an Area-Efficient Implementation of a High ILP EDGE Soft Processor

In-order scalar RISC architectures have been the dominant paradigm in FP...
research
05/12/2021

SimNet: Computer Architecture Simulation using Machine Learning

While cycle-accurate simulators are essential tools for architecture res...
research
04/21/2020

PMEvo: Portable Inference of Port Mappings for Out-of-Order Processors by Evolutionary Optimization

Achieving peak performance in a computer system requires optimizations i...
research
01/13/2022

MCAD: Beyond Basic-Block Throughput Estimation Through Differential, Instruction-Level Tracing

Estimating instruction-level throughput is critical for many application...
research
08/03/2013

An Improving Method for Loop Unrolling

In this paper we review main ideas mentioned in several other papers whi...
research
01/10/2023

A Storage-Effective BTB Organization for Servers

Many contemporary applications feature multi-megabyte instruction footpr...

Please sign up or login with your details

Forgot password? Click here to reset