~/talk

Evaluating Candidate Instructions for Reliable Program Slowdown at the Compiler Level -(…)

Talkat VMIL 2025 · on Wednesday, 2025-10-15· [compilers-and-language-design]

Evaluation inserts six x86 candidates (NOP, MOV, PAUSE, push/pop variants, SFENCE, vector push/pop) into machine code at basic‑block granularity using compilation replay and Intel VTune hardware‑counter feedback to reach a 100% target slowdown on an Intel Core i5-10600. NOP and MOV achieve near‑target, well‑distributed slowdown and preserve sampling profiles; PAUSE explodes overhead (~11,000%), push/pop ≈200%, SFENCE/long sequences ≈400%, so they overshoot. Methodology also uncovers profiler blind spots: Async/JFR detect forced delays, YourKit/JProfiler can miss them.

AI-written summary · about

  1. 0:00Reliable program slowdown intro
  2. 1:23Use cases and requirements
  3. 3:30Methodology and setup
  4. 7:29Slowdown accuracy and overhead
  5. 9:13Slowdown distribution across blocks
  6. 10:18Impact on program behavior
  7. 11:21Profiler evaluation application
  8. 12:46Conclusion and viable instructions
  9. 13:06Q&A: Programmer-specified slowdown
  10. 14:52Q&A: CPU architecture sensitivity
  11. 15:35Q&A: Variable block execution time
  12. 17:23Q&A: Manual timing surprises
  13. 18:28Q&A: Multi-core slowdown generalization
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.