~/talk

Formally Verified Superblock Scheduling

Talkat CPP 2022 · 2022-01-17..01-18· [compilers-and-language-design]
name:Cyril Six
links:none on file
links:none on file
links:none on file
links:none on file
links:none on file
links:none on file
slides:none on file

A certified scheduler that actually runs over superblocks is implemented and hooked into CompCert integration with a machine-checked semantic preservation proof from C to assembly. The pipeline accepts untrusted oracles and uses translation validation: certified, scalable checkers validate transforms via an architecture-independent simulation test over superblocks modulo register liveness implemented with hash-consed symbolic execution. Microbenchmarks show concrete speedups (about 40% faster on ARM8, 62% on kv-3, 14% on RISC‑V) and a local register-rename example yields ~30% improvement.

AI-written summary · about

  1. 0:00Intro
  2. 0:27Avoiding compilation bugs
  3. 3:00Notion of blockstep simulation Block a sequential loop free piece of code with
  4. 3:54Validating basic-block simulations
  5. 7:54Lengthen superblocks (for leveraging intra-block optims) Various standard code duplication strategies tail-duplication right-distribution of a sequence over altamative
  6. 9:09Instruction Level Parallelism
  7. 9:53A tiny-example introducing instruction scheduling
  8. 10:33A certified scheduling for the tiny-example
  9. 11:22Interleaving of rotated & unrolled loop-bodies on ARM A53
  10. 12:16Impact of our optimizations
  11. 13:14Questions?
  12. 16:19The main parts of COMP CERT Trusted Computing Base
~/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.