-
Levels
noop
: disable optimizationsadvanced
: all optimizationsadvanced-fsg
: alternative optimization pipeline
-
Options (type, default)
- Parallelism:
openmp
(boolean, False): enable/disable OpenMP parallelismpar-collapse-ncores
(int, 4): control loop collapsingpar-collapse-work
(int, 100): control loop collapsingpar-chunk-nonaffine
(int, 3): control chunk size in nonaffine loopspar-dynamic-work
(int, 10): switch between dynamic and static schedulingpar-nested
(int, 2): control nested parallelism
- Blocking:
blockinner
(boolean, False): enable/disable loop blocking along innermost loopblocklevels
(int, 1): 1 => classic loop blocking; 2 for two-level hierarchical blocking; etc.
- CIRE:
min-storage
(boolean, False): smaller working set size, less loop fusioncire-rotate
(boolean, False): smaller working set size, fewer parallel dimensionscire-maxpar
(boolean, False): bigger working set size, more parallelismcire-maxalias
(boolean, False): bigger working set size, better flop countcire-ftemps
(boolean, False): give user control over the allocated temporariescire-mincost-sops
(int, 10): minimum cost of a sum-of-product candidatecire-mincost-inv
(int, 50): minimum cost of a dimension-invariant candidate
- Device-specific:
gpu-fit
(boolean, False): list of saved TimeFunctions that fit in the device memorygpu-direct
(boolean, False): generate code for optimized GPU-aware MPIpar-disabled
(boolean, True): enable/disable parallelism on the host
- Parallelism:
- Parallelism
CPU | GPU | |
---|---|---|
openmp | ✔️ | ✔️ |
par-collapse-ncores | ✔️ | ❌ |
par-collapse-work | ✔️ | ❌ |
par-chunk-nonaffine | ✔️ | ✔️ |
par-dynamic-work | ✔️ | ❌ |
par-nested | ✔️ | ❌ |
- Blocking
CPU | GPU | |
---|---|---|
blockinner | ✔️ | ❌ |
blocklevels | ✔️ | ❌ |
- CIRE
CPU | GPU | |
---|---|---|
min-storage | ✔️ | ❌ |
cire-rotate | ✔️ | ❌ |
cire-maxpar | ✔️ | ✔️ |
cire-maxalias | ✔️ | ✔️ |
cire-ftemps | ✔️ | ✔️ |
cire-mincost-sops | ✔️ | ✔️ |
cire-mincost-inv | ✔️ | ✔️ |
- Device-specific
CPU | GPU | |
---|---|---|
gpu-fit | ❌ | ✔️ |
gpu-direct | ❌ | ✔️ |
par-disabled | ❌ | ✔️ |