Code free of bugs or potential issues related to performance
Actionable insights tagged with ‘correctness’ in Parallelware Analyzer:
PWD002: Unprotected multithreading reduction operation
PWD003: Missing array range in data copy to the GPU
PWD004: Out-of-memory-bounds array access
PWD005: Array range copied to or from the GPU does not cover the used range
PWD006: Missing deep copy of non-contiguous data to the GPU
PWD007: Unprotected multithreading recurrence
PWD008: Unprotected multithreading recurrence due to out-of-dimension-bounds array access
PWD009: Incorrect privatization in OpenMP parallel region
PWD010: Incorrect sharing in OpenMP parallel region
PWD011: Missing OpenMP last private clause
PWR001: Declare global variables as function parameters
PWR002: Declare scalar variables in the smallest possible scope
PWR003: Explicitly declare pure functions
PWR004: Declare OpenMP scoping for all variables
PWR005: Disable default OpenMP scoping
PWR007: Disable implicit declaration of variables
PWR008: Declare the intent for each procedure parameter
PWR012: Pass only required fields from derived data types as parameters