v4.3 tag release update. (#2789)
This commit is contained in:
@@ -108,7 +108,9 @@ __global__ void GemmComplex(
|
||||
|
||||
tensor_a.add_pointer_offset(batch_idx * batch_stride_A);
|
||||
tensor_b.add_pointer_offset(batch_idx * batch_stride_B);
|
||||
tensor_c.add_pointer_offset(batch_idx * batch_stride_C);
|
||||
if(tensor_c.data()) {
|
||||
tensor_c.add_pointer_offset(batch_idx * batch_stride_C);
|
||||
}
|
||||
tensor_d.add_pointer_offset(batch_idx * batch_stride_D);
|
||||
|
||||
for (; batch_idx < batch_count; batch_idx += gridDim.z) {
|
||||
@@ -163,17 +165,20 @@ __global__ void GemmComplex(
|
||||
MatrixCoord coord = MatrixCoord(row, col);
|
||||
|
||||
if (row < M && col < N) {
|
||||
|
||||
tensor_d.at(coord) = convert_op(
|
||||
alpha * ScalarType(accum[i][j]) +
|
||||
beta * ScalarType(tensor_c.at(coord)));
|
||||
ScalarType epilog = alpha * ScalarType(accum[i][j]);
|
||||
if(tensor_c.data()) {
|
||||
epilog += beta * ScalarType(tensor_c.at(coord));
|
||||
}
|
||||
tensor_d.at(coord) = convert_op(epilog);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
tensor_a.add_pointer_offset(batch_stride_A * gridDim.z);
|
||||
tensor_b.add_pointer_offset(batch_stride_B * gridDim.z);
|
||||
tensor_c.add_pointer_offset(batch_stride_C * gridDim.z);
|
||||
if(tensor_c.data()) {
|
||||
tensor_c.add_pointer_offset(batch_stride_C * gridDim.z);
|
||||
}
|
||||
tensor_d.add_pointer_offset(batch_stride_D * gridDim.z);
|
||||
|
||||
} // for (batch_idx)
|
||||
|
||||
@@ -154,10 +154,11 @@ void GemmComplex(
|
||||
MatrixCoord coord = MatrixCoord(row, col);
|
||||
|
||||
if (row < M && col < N) {
|
||||
|
||||
tensor_d.at(coord) = convert_op(
|
||||
alpha * ScalarType(accum[i][j]) +
|
||||
beta * ScalarType(tensor_c.at(coord)));
|
||||
ScalarType epilog = alpha * ScalarType(accum[i][j]);
|
||||
if(tensor_c.data()) {
|
||||
epilog += beta * ScalarType(tensor_c.at(coord));
|
||||
}
|
||||
tensor_d.at(coord) = convert_op(epilog);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -167,7 +168,9 @@ void GemmComplex(
|
||||
|
||||
tensor_a.add_pointer_offset(batch_stride_A);
|
||||
tensor_b.add_pointer_offset(batch_stride_B);
|
||||
tensor_c.add_pointer_offset(batch_stride_C);
|
||||
if(tensor_c.data()) {
|
||||
tensor_c.add_pointer_offset(batch_stride_C);
|
||||
}
|
||||
tensor_d.add_pointer_offset(batch_stride_D);
|
||||
|
||||
} // for (batch_idx)
|
||||
|
||||
Reference in New Issue
Block a user