Updates to fused epilogue (#383)
* Enhancements and fixes to fused GEMM and Convolution epilogue. * Need to explicitly list cudart as unit test library dependency.
This commit is contained in:
@@ -69,11 +69,11 @@ struct GemmWithBroadcastReferenceOp {
|
||||
|
||||
void operator()(ElementZ &Z, ElementT &T, ElementCompute gemm, ElementCompute bias) {
|
||||
|
||||
ElementCompute z_full = binary_op(gemm, bias);
|
||||
Z = ElementZ(z_full);
|
||||
|
||||
ElementCompute t_full = elementwise_op(z_full);
|
||||
ElementCompute t_full = binary_op(gemm, bias);
|
||||
T = ElementT(t_full);
|
||||
|
||||
ElementCompute z_full = elementwise_op(t_full);
|
||||
Z = ElementZ(z_full);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -83,9 +83,9 @@ struct GemmWithBroadcastReferenceOp {
|
||||
//
|
||||
// Y = GEMM(AB, C)
|
||||
//
|
||||
// Z[i, j] = ReductionOp(Y[i, j], Broadcast[i])
|
||||
// T[i, j] = ReductionOp(Y[i, j], Broadcast[i])
|
||||
//
|
||||
// T[i, j] = Elementwise(Z[i, j])
|
||||
// Z[i, j] = Elementwise(T[i, j])
|
||||
//
|
||||
|
||||
template <
|
||||
@@ -101,7 +101,6 @@ struct TestbedGemmWithBroadcast {
|
||||
using ElementZ = typename OutputOp::ElementZ;
|
||||
using ElementT = typename OutputOp::ElementT;
|
||||
|
||||
|
||||
/// Initialization
|
||||
cutlass::Distribution::Kind init_A;
|
||||
cutlass::Distribution::Kind init_B;
|
||||
@@ -343,7 +342,6 @@ struct TestbedGemmWithBroadcast {
|
||||
|
||||
ReferenceOp reference_op;
|
||||
|
||||
|
||||
// compute tensor Z and tensor T
|
||||
for (int m = 0; m < problem_size.m(); ++m) {
|
||||
for (int n = 0; n < problem_size.n(); ++n) {
|
||||
|
||||
Reference in New Issue
Block a user