[PATCH] D52434: [OpenMP] Make default distribute schedule for NVPTX target regions in SPMD mode achieve coalescing

Jonas Hahnfeld via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Sep 28 01:57:13 PDT 2018


Hahnfeld added a comment.

Just tested this and got very weird results for register usage:

  void func(double *a) {
    #pragma omp target teams distribute parallel for map(a[0:100]) // dist_schedule(static)
    for (int i = 0; i < 100; i++) {
      a[i]++;
    }
  }

Compiling with current trunk for `sm_60` (Pascal): 29 registers
Adding `dist_schedule(static)` (the previous default): 19 registers
For reference: `dist_schedule(static, 128)` also uses 29 registers

Any ideas? This significantly slows down STREAM...


Repository:
  rC Clang

https://reviews.llvm.org/D52434





More information about the cfe-commits mailing list