-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Take into consideration this SCOP:
(The commentary on the code regards the last example in the issue)
#pragma scop
for (int i = 0; i < _PB_NI; i++) { //"FO"
for (int j = 0; j < _PB_NJ; j++) //"F0_F0"
C[i][j] *= beta;
for (int k = 0; k < _PB_NK; k++) { //"F0_F1"
for (int j = 0; j < _PB_NJ; j++) //"F0_F1_F0"
C[i][j] += alpha * A[i][k] * B[k][j];
}
}
#pragma endscop
If I want to tile both inner loops, I need a transformation list like this:
transformation_list = [
[77, "TILE2D", 32, 32],
[74, "TILE2D", 32, 32],
]
However, although equivalent, the following list is invalid, since the first transformation modifies the indices of the other lists:
transformation_list = [
[74, "TILE2D", 32, 32],
[77, "TILE2D", 32, 32],
]
Adding string indices to the FOR loops, rather than numerical ones, would reduce the number of invalid transformation lists, eg:
transformation_list = [
[“F0_F0”, "TILE2D", 32, 32],
[“F0_F1”, "TILE2D", 32, 32],
]
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels