USING THE SPIN MODEL CHECKER FOR AUTO-TUNING HIGH-PERFORMANCE PROGRAMS

Gorlatch, S.; Garanina, N.; Staroletov, S.

Research article (journal) | Peer reviewed

Abstract

The paper bridges two traditionally separate research directions: (1) model checking, commonly used in the formal verification of programs, and (2) auto-tuning, frequently applied in high-performance computing. Auto-tuning frameworks optimize parallel programs by identifying the optimal values of performance-critical parameters—known as tuning parameters—for specific high-performance architectures and data sizes. Given the large number of parameters affecting a program’s performance, determining the optimal configuration is a challenging task, even for experts. Although auto-tuning automates this process, it is often time-intensive. We accelerate auto-tuning by applying model checking, utilizing a counterexample generated during the verification of the program’s optimality property. This paper provides a detailed implementation of our approach for OpenCL programs—a standard for programming modern high-performance architectures—using the Promela modeling language and the SPIN verification tool, along with a report on our experimental results.

Details about the publication

JournalJournal of Mathematical Sciences
Volume-
Issue-
StatusPublished
Release year2025
Language in which the publication is writtenEnglish
DOI10.1007/s10958-025-07687-3
KeywordsModel checking; Temporal logics; Counterexamples; SPIN; Promela; Auto-tuning; High-performance computing

Authors from the University of Münster

Gorlatch, Sergei
Professorship of Practical Comupter Science (Prof. Gorlatch)
Institute of Computer Science