Sanitizers Tutorial

789806
3/24/2025

Introduction

This download provides: • Four versions of source code for a simple Fibonacci number list generator with errors as a tutorial. • OpenMP* MergeSort example code. • N-body particle motion example code • Simple VectorAdd example using SYCL*.

Available Downloads

  • Linux*
  • Size: 100 KB
  • SHA256: 4D00085BEB08BF3C326419BBD6998C0A00FCD022FEBCAE5DDF39E0846F3C8FA8
  • Linux*
  • Size: 30.9 KB
  • SHA256: 6D836E19E78F57CF0906C1AF09519E43BDB19BD6C0FB0275F5DEE080D9FF3F81

Detailed Description

Access four versions of source code with errors for a simple Fibonacci number list generator as a tutorial.

  • V1: Out-of-Bounds Memory Address Error
  • V2: Signed Integer Overflow
  • V3: Uninitialized Memory
  • V4: All Fixed

The download provides:

  • A MergeSort example to illustrate ThreadSanitizer capabilities.
  • A C++ with SYCL example for VectorAdd to illustrate a GPU device-aware AddressSanitizer.
  • An n-body example that illustrates the numerical stability sanitizer's ability to detect numerical (floating point) bugs.
  • Additional details for OneKit approval:
    • Release version and revision date: 2025.1, March 14, 2025
    • Description: Access four versions of source code with errors for a simple Fibonacci number list generator as a tutorial. Additionally, get simple MergeSort and VectorAdd examples to support two new tutorial chapters.
    • Export Control Classification Number (ECCN, optional): None, not applicable.
    • License (optional): Attached.
    • Long description: Access four versions of source code with errors for a simple Fibonacci number list generator as a tutorial. Additionally, get a MergeSort example to illustrate ThreadSanitizer capabilities and a C++ with SYCL example for VectorAdd to illustrate the GPU-device-aware AddressSanitizer.
  • V1: Out-of-Bounds Memory Address Error
  • V2: Signed Integer Overflow
  • V3: Uninitialized Memory
  • V4: All Fixed
  • MergeSort example
  • VectorAdd example
    • Release notes (optional, text or links): n/a
    • Tags
  • n-body example: numerical stability sanitizer floating point defect detection
  • Languages (usually English, but specify if the software is released or supports other languages): C, English
  • Operating system: C, Linux*