Formally Verified Superblock Scheduling - Archive ouverte HAL Access content directly
Conference Papers Year : 2022

Formally Verified Superblock Scheduling

Cyril Six
Léo Gourdin
Sylvain Boulmé
David Monniaux
Justus Fasse
  • Function : Author
  • PersonId : 1119328
Nicolas Nardino
  • Function : Author
  • PersonId : 1119329

Abstract

On in-order processors, without dynamic instruction scheduling, program running times may be significantly reduced by compile-time instruction scheduling. We present here the first effective certified instruction scheduler that operates over superblocks (it may move instructions across branches), along with its performance evaluation. It is integrated within the CompCert C compiler, providing a complete machine-checked proof of semantic preservation from C to assembly. Our optimizer composes several passes designed by translation validation: program transformations are proposed by untrusted oracles, which are then validated by certified and scalable checkers. Our main checker is an architecture-independent simulation-test over superblocks modulo register liveness, which relies on hash-consed symbolic execution.
Fichier principal
Vignette du fichier
hal_prepass_scheduling.pdf (623.51 Ko) Télécharger le fichier
Origin Files produced by the author(s)

Dates and versions

hal-03200774 , version 1 (16-04-2021)
hal-03200774 , version 2 (11-12-2021)

Identifiers

Cite

Cyril Six, Léo Gourdin, Sylvain Boulmé, David Monniaux, Justus Fasse, et al.. Formally Verified Superblock Scheduling. Certified Programs and Proofs (CPP ’22), Jan 2022, Philadelphia, United States. pp.40-54, ⟨10.1145/3497775.3503679⟩. ⟨hal-03200774v2⟩
537 View
487 Download

Altmetric

Share

Gmail Mastodon Facebook X LinkedIn More