On the MC/DC code coverage of Vulkan SC GPU code

Abstract

Next generation avionics systems require high performance, which can be provided by graphics processing units (GPUs). The newly introduced API Vulkan SC, enables the development of safety critical GPU software with complex control flow, whose certification is subject to DO-178C certifiability objectives, such as MC/DC code coverage.In this paper we explain for the first time how MC/DC coverage can be applied in Vulkan SC code as well as the type of potential development errors which can arise in GPU programming. We show how GPU code can be converted in equivalent sequential CPU code and how both versions can achieve 100% MC/DC code coverage.This work was performed within the Airbus TANIAGPU Project ADS (E/200). It was also partially supported by the European Space Agency (ESA) through the GPU4S (GPU for Space) activity, the Spanish Ministry of Economy and Competitiveness under grants PID2019- 107255GB-C21 and IJC-2020-045931-I ( Spanish State Research Agency / Agencia Espanola de Investigación (AEI) / http://dx.doi.org/10.13039/501100011033 ) and the HiPEAC Network of ExcellencePeer ReviewedPostprint (author's final draft

    Similar works