• Home
  • Search
  • CUDA au Coq: A Framework for Machine-validating GPU Assembly Programs
  • Cite Icon6
  • https://doi.org/10.23919/date.2019.8715160Copy DOI Icon

CUDA au Coq: A Framework for Machine-validating GPU Assembly Programs

  • Mar 1, 2019
  • Benjamin Ferrell +2 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

A prototype framework for formal, machine-checked validation of GPU pseudo-assembly code algorithms using the Coq proof assistant is presented and discussed. The framework is the first to afford GPU programmers a reliable means of formally machine-validating high-assurance GPU computations without trusting any specific source-to-assembly compilation toolchain. A formal operational semantics for the PTX pseudo-assembly language is expressed as inductive, dependent Coq types, facilitating development of proofs and proof tactics that refer directly to the compiled PTX object code. Challenges modeling PTX’s complex and highly parallelized computation model in Coq, with sufficient clarity and generality to tractably prove useful properties of realistic GPU programs, are discussed. Examples demonstrate how the prototype can already be used to validate some realistic programs.

Similar Papers
  • Conference Article
  • Citations107

Programming and reasoning with algebraic effects and dependent types

  • Sep 25, 2013
  • Edwin Brady
  • Conference Article
  • Citations33

Compiler verification meets cross-language linking via data abstraction

  • Oct 15, 2014
  • Peng Wang +2
  • Conference Article
  • Citations95

A certified type-preserving compiler from lambda calculus to assembly language

  • Jun 10, 2007
  • Adam Chlipala
  • Research Article

Proceedings First International Workshop on Hammers for Type Theories

  • Jun 17, 2016
  • Electronic Proceedings in Theoretical Computer Science
  • Pierre Corbineau
  • Research Article
  • Citations3

Dependent Types for Extensive Games

  • Mar 08, 2018
  • Journal of Formalized Reasoning
  • Pierre Lescanne
  • Conference Article
  • Citations10

TeIL: a type-safe imperative tensor intermediate language

  • Jun 08, 2019
  • Norman A Rink +1
  • Book Chapter
  • Citations10

A Generic Program Slicing Technique Based on Language Definitions

  • Jan 01, 2013
  • Adrián Riesco +2
  • Conference Article
  • Citations1

Formal semantics of UDL/I and its applications to CAD/DA tools

  • Sep 17, 1990
  • H Yasuura +1
  • Conference Article
  • Citations26

Encoding Featherweight Java with assignment and immutability using the Coq proof assistant

  • Jun 12, 2012
  • Julian Mackay +4
  • Book Chapter
  • Citations3

On the Formalization of Some Results of Context-Free Language Theory

  • Jan 01, 2016
  • Marcus Vinícius Midena Ramos +3
  • Conference Article
  • Citations4

Region analysis: a parallel elimination method for data flow analysis

  • May 16, 1994
  • Yong-Fong Lee +2
  • Book Chapter
  • Citations3

A reflection-based proof tactic for lattices in Coq

  • May 10, 2014
  • Daniel W H James +1
  • PDF
  • Research Article
  • Citations4

Systematic adaptation and investigation of the understandability of a formal pattern language

  • Mar 01, 2024
  • Requirements Engineering
  • Elisabeth Henkel +4
  • Research Article
  • Citations77

A New Look at Generalized Rewriting in Type Theory

  • Jan 04, 2010
  • Journal of Formalized Reasoning
  • Matthieu Sozeau
  • Research Article
  • Citations57

How Java APIs break – An empirical study

  • Mar 06, 2015
  • Information and Software Technology
  • Kamil Jezek +2
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.