Skip to content

Commit

Permalink
split inner reduction heuristics into 2d and 3d heuristics (#3330)
Browse files Browse the repository at this point in the history
**What's in this PR?**
This PR separates inner reduction heuristics into distinct 2D and 3D
heuristic functions.

**Why?**
The 2D and 3D reductions represent different domain structures within
the reduction tensor view:

- 2D inner reduction: Domains in the reduction tensor view can be merged
into a 2D structure, [I, R].
- 3D inner reduction: Domains can be merged into a 3D structure, [R, I,
R].

These two configurations require different parallelization strategies,
so keeping them in separate functions enhances maintainability and
allows for individual optimization of each heuristic.

**code changes**
The existing `innerReductionHeuristic()` is duplicated as
`inner2dReductionHeuristic` and `inner3dReductionHeuristic`, will clean
`inner2dReductionHeuristic` in a separate PR.
  • Loading branch information
liqiangxl authored Nov 8, 2024
1 parent 96d64b6 commit 7b3227b
Showing 1 changed file with 462 additions and 9 deletions.
Loading

0 comments on commit 7b3227b

Please sign in to comment.