Actionable insights tagged with ‘cpu’ in Parallelware Analyzer:
PWD002: Unprotected multithreading reduction operation
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
PWR017: Transform while into for loop in order to allow vectorization
PWR018: Call to recursive function within a loop may inhibit vectorization
PWR019: Consider interchanging loops to favor vectorization by maximizing inner loop’s trip count
PWR020: Consider loop fission to enable vectorization
PWR021: Temporary computation can be extracted to a vectorizable loop
PWR022: Move invariant conditional out of the loop to facilitate vectorization
PWR025: Consider annotating pure function with OpenMP ‘declare simd’
RMK001: loop nesting that might benefit from hybrid parallelization using multithreading and SIMD