Compiler sanitizers give you tools to detect bugs and/or errors, including buffer overflows, accessing dangling pointers, using uninitialized memory, and other types of undefined behavior. The compiler sanitizers work with OpenMP*.
System Requirements
- Platform Support: CPU devices and Ponte Vecchio GPUs are supported on Linux*.
- GPU Configuration: This feature supports a Ponte Vecchio GPU card. For the Intel® oneAPI Level Zero (Level Zero) runtime, use the
ZE_AFFINITY_MASK=0 environment variable to set this configuration.
Limitations
Compiler sanitizers have the following limitations:
- Kernel execution is sequential. Concurrent execution is forced into sequential execution when device-side ASan is enabled.
- A large number of workgroups on a GPU may lead to the device-side ASan skipping an out-of-bound check for private/local memory, as well as device-side MSan skipping uninitialized usage checks for private/local memory.
- OpenMP (Fortran) only supports execution on a GPU device.