跳到主要内容
知仓学习社ZHICANG

micro-experiments

Use when designing or auditing the evaluation of a MICRO paper — choosing the right instrument on the ladder from analytical model to cycle-level si…

不碰外部(只输出文字)无严重或高危命中brycewang-stanford/Awesome-Journal-Skills

它会碰到什么

扫了多少1 个文本文件,6 KB
它会碰到什么不碰外部(只输出文字)
命中总数0 处
命中统计严重 0 · 高 0 · 中 0 · 低 0

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

MICRO Experiments

MICRO's evaluation culture is instrument-centric: the community knows exactly what

each measurement tool can and cannot prove, and reviewers score the *match between

claim and instrument* before they look at the numbers.

The instrument ladder

| Instrument | Proves | Cannot prove | Typical tools |

|---|---|---|---|

| Analytical / trace model | First-order potential, limit studies | Interaction effects, timing | custom, trace-driven models |

| Cycle-level simulation | Relative performance of mechanisms | Absolute wall-clock, physical cost | gem5, ChampSim, Sniper, Ramulator/DRAMsim3 |

| Power/area models on top of sim | Energy and area trends | Sign-off-quality numbers | McPAT, CACTI, Accelergy |

| RTL + synthesis | Timing closure, real area/power at a node | Full-system performance | Verilog/Chisel + synthesis flow |

| FPGA prototype | Functional correctness at scale, OS interaction | ASIC frequency/power | FireSim, custom boards |

| Silicon measurement | Everything, for that one chip | Generality across designs | perf counters, power rails |

Rule: claim one rung below your strongest instrument. Cycle-level simulation

plus McPAT supports "reduces memory-stall cycles by X% with ~Y mm² estimated

overhead"; it does not support "improves datacenter TCO." The lineage here is the

venue's own: CACTI 6.0 (MICRO 2007) and McPAT (MICRO 2009) were published at MICRO

precisely because the community polices modeling fidelity.

Baseline construction — where most rejections start

  • The baseline core must be configured like a current product, not a textbook

default: wide OoO, capable branch predictor, competent multi-stream prefetcher,

realistic DRAM timing. A win over gem5's out-of-the-box config is a non-result.

  • Include the best prior mechanism in your exact category, re-implemented in

your simulator with its published parameters — not just numbers copied from its

paper under a different config.

  • Add an idealized upper bound (oracle predictor, infinite table) so readers see

what fraction of the headroom you capture.

  • If your mechanism uses N KB of extra storage, give the baseline the same N KB as

additional cache/predictor capacity in at least one comparison — the

"iso-storage" check reviewers ask for in rebuttal anyway.

Workloads

  • Name the suite and the subsetting rule: SPEC CPU2017 (all, or a stated-criterion

subset), PARSEC/GAP for multithreaded, MLPerf or named DNNs for accelerators,

plus the domain traces your mechanism targets.

  • Disclose sampling methodology: SimPoint regions, warmup lengths, instruction

budgets per region. Cherry-picked "representative regions" without a stated

selection rule are a rebuttal magnet.

  • Report per-workload bars plus geomean — never arithmetic means of speedups,

and never geomean-only (it hides the regressions reviewers will hunt for).

# the only defensible summary statistic for speedups
from math import prod
def geomean(xs):
    return prod(xs) ** (1.0 / len(xs))
speedups = per_workload_ipc_new / per_workload_ipc_base   # elementwise
print(f"geomean {geomean(list(speedups)):.3f}, "
      f"min {min(speedups):.3f} ({worst_workload}), "
      f"regressions: {(speedups < 1.0).sum()} of {len(speedups)}")

The ablation and sensitivity contract

Every design decision named in the mechanism section owes the evaluation section a

figure or table row:

  • Ablate each component (drop the filter, halve the table, disable the guard)

to show each earns its area.

  • Sweep the structural parameters: table sizes, associativities, thresholds,

core counts, LLC capacities, DRAM bandwidth. The mechanism should degrade

gracefully at the sweep edges — cliffs demand explanation in the text.

  • Stress adversarially: the workload class the mechanism should not help, the

access pattern designed to defeat it. Reporting a bounded loss builds more trust

than an unbroken win column.

Simulation-length and validation sanity

Two credibility checks reviewers apply that authors often skip:

  • Enough simulated instructions per region. Sub-100M-instruction detailed

windows on memory-bound workloads mostly measure the warmup transient. State

warmup and detailed lengths, and show at least once that doubling them does not

move the headline.

  • Baseline validation against published numbers. Before trusting relative

results, show your baseline's absolute behavior is sane: IPC or MPKI within

the published envelope for the same suite and a comparable config. A baseline

whose branch predictor achieves 2x the published MPKI of the modeled design

invalidates the comparison silently.

For multicore results, disclose how heterogeneity was handled: mix construction

rule, per-mix repetitions, and whether throughput is weighted speedup, harmonic

mean, or raw IPC sum — each answers a different question and reviewers check that

the metric matches the claim (fairness claims need a fairness metric).

Overhead accounting checklist

  • [ ] Storage: bits/entry × entries, totaled in KB, per core and shared.
  • [ ] Area and power: model named with version (e.g., McPAT vX at Ynm), numbers

labeled as estimates.

  • [ ] Latency: added pipeline stages or access-path cycles; off critical path

claims justified.

  • [ ] Energy: dynamic + leakage deltas, not just "negligible."
  • [ ] Complexity: verification surface, new SRAM ports, wiring — one honest

paragraph.

Output format

[Instrument] <rung used> — claim height matches: yes / no (quote the overclaim)
[Baseline strength] product-like config / best-prior reimplemented / oracle bound /
                    iso-storage check: present-absent each
[Workloads] suite + subset rule + sampling disclosure: complete / gaps listed
[Summary stats] per-workload + geomean + regression count: yes / no
[Ablations] each mechanism component covered: list of unablated components
[Sensitivity] parameters swept vs parameters hardcoded
[Overheads] storage / area / power / latency / energy: quantified-missing each

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。