Testing the Unknown: A Framework for OpenMP Testing via Random Program Generation

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Laguna, Ignacio, Chapman, Patrick, Parasyris, Konstantinos, Georgakoudis, Giorgis, Rubio-González, Cindy
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866909346725625856
author Laguna, Ignacio
Chapman, Patrick
Parasyris, Konstantinos
Georgakoudis, Giorgis
Rubio-González, Cindy
author_facet Laguna, Ignacio
Chapman, Patrick
Parasyris, Konstantinos
Georgakoudis, Giorgis
Rubio-González, Cindy
contents We present a randomized differential testing approach to test OpenMP implementations. In contrast to previous work that manually creates dozens of verification and validation tests, our approach is able to randomly generate thousands of tests, exposing OpenMP implementations to a wide range of program behaviors. We represent the space of possible random OpenMP tests using a grammar and implement our method as an extension of the Varity program generator. By generating 1,800 OpenMP tests, we find various performance anomalies and correctness issues when we apply it to three OpenMP implementations: GCC, Clang, and Intel. We also present several case studies that analyze the anomalies and give more details about the classes of tests that our approach creates.
format Preprint
id arxiv_https___arxiv_org_abs_2410_09191
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Testing the Unknown: A Framework for OpenMP Testing via Random Program Generation
Laguna, Ignacio
Chapman, Patrick
Parasyris, Konstantinos
Georgakoudis, Giorgis
Rubio-González, Cindy
Software Engineering
Performance
Programming Languages
We present a randomized differential testing approach to test OpenMP implementations. In contrast to previous work that manually creates dozens of verification and validation tests, our approach is able to randomly generate thousands of tests, exposing OpenMP implementations to a wide range of program behaviors. We represent the space of possible random OpenMP tests using a grammar and implement our method as an extension of the Varity program generator. By generating 1,800 OpenMP tests, we find various performance anomalies and correctness issues when we apply it to three OpenMP implementations: GCC, Clang, and Intel. We also present several case studies that analyze the anomalies and give more details about the classes of tests that our approach creates.
title Testing the Unknown: A Framework for OpenMP Testing via Random Program Generation
topic Software Engineering
Performance
Programming Languages
url https://arxiv.org/abs/2410.09191