Skip to content
STIMSMITH

SPEC benchmarks

Concept WIKI v1 · 5/28/2026

In the provided evidence, SPEC benchmarks are discussed as long-running Linux workloads used as examples for processor co-simulation and checkpoint-based verification. The MICRO-54 paper "Effective Processor Verification with Logic Fuzzer Enhanced Co-simulation" describes using Dromajo checkpoints and simulation points to run portions of such benchmarks in parallel and to reduce simulation cost.

Overview

The provided evidence treats SPEC benchmarks as examples of lengthy benchmark programs that may run on Linux and be used in processor verification through co-simulation. In the cited MICRO-54 paper, SPEC benchmarks are not introduced as a benchmark suite in detail; instead, they are used to illustrate how checkpointing and phase-based simulation can make long-running workloads more practical for RTL co-simulation. [C1]

Use in checkpoint-based co-simulation

The paper describes Dromajo checkpoints as snapshots of a processor's architectural state after executing some number of instructions. Dromajo can generate checkpoints for arbitrary RISC-V applications and later resume them with co-simulation enabled. [C2]

For long-running programs such as SPEC benchmarks running on Linux, the described workflow is to run the program quickly in standalone Dromajo, dump N checkpoints during the run, and then spawn those checkpoints across N separate simulations for parallel co-simulation. This approach is presented as a way to improve productivity by reducing the time spent in simulation. [C1]

Phase analysis and simulation points

The paper also connects checkpointing to phase analysis and simulation points. It states that benchmarks can be checkpointed at simulation points that represent different program phases, allowing SPEC benchmarks to be co-simulated faster by loading representative phase checkpoints rather than simulating an entire run from the beginning. [C3]

Verification context

In the broader verification flow described by the paper, checkpointing is useful because it can avoid recompiling multiple benchmarks, can split sequences such as Linux boot into several checkpoints, can capture important program phases in a portable format, and can allow a long-running program to be checkpointed and run in parallel to reduce simulation cost. [C4]

Relationship to the Logic Fuzzer co-simulation paper

The paper Effective Processor Verification with Logic Fuzzer Enhanced Co-simulation uses SPEC benchmarks as an example workload category when motivating Dromajo checkpointing for RISC-V co-simulation. [C1]

CITATIONS

4 sources
4 citations
[1] SPEC benchmarks are discussed as examples of lengthy programs running on Linux that can be tested through Dromajo checkpointing and parallel co-simulation. [PDF] Effective Processor Verification with Logic Fuzzer Enhanced Co ...
[2] A Dromajo checkpoint is described as a snapshot of architectural state taken after a certain number of instructions; Dromajo can generate checkpoints for arbitrary RISC-V applications and resume them with co-simulation enabled. [PDF] Effective Processor Verification with Logic Fuzzer Enhanced Co ...
[3] The paper proposes using phase analysis and simulation points to checkpoint benchmarks and co-simulate SPEC benchmarks faster by loading checkpoints for different program phases. [PDF] Effective Processor Verification with Logic Fuzzer Enhanced Co ...
[4] Checkpointing can reduce the need to recompile benchmarks, split Linux boot into checkpoints, capture important phases in a portable format, and run long-running programs in parallel to reduce simulation cost. [PDF] Effective Processor Verification with Logic Fuzzer Enhanced Co ...