"src/include/blockwise_2d_tensor_op.hip.hpp" did not exist on "adf4b173b30f463d56d111c42116e1d20e194cf4"
Commit ce87bcc7 authored by Bartlomiej Kocot's avatar Bartlomiej Kocot
Browse files

tmp

parent c8a8385f
......@@ -89,8 +89,8 @@ int run_groupnorm_example()
ref_invoker.Run(ref_argument);
y_dev.FromDevice(y.mData.data());
pass &= ck::utils::check_err(y, host_y, "Error: Incorrect results", 1e-3, 1e-3);
validator.check_err(y, host_y, "Error: Incorrect results", 1e-3, 1e-3);
}
return (pass ? 0 : 1);
return !validator.is_success();
}
......@@ -458,9 +458,9 @@ int main(int argc, char* argv[])
}
}
pass &= ck::utils::check_err(e_device_tensors[i], e_ms_ns_host_result);
validator.check_err(e_device_tensors[i], e_ms_ns_host_result);
}
}
return pass ? 0 : 1;
return !validator.is_success();
}
......@@ -424,7 +424,8 @@ int main(int argc, char* argv[])
}
}
return ck::utils::check_err(e_gs_ms_ns_device_result, e_gs_ms_ns_host_result) ? 0 : 1;
validator.check_err(e_gs_ms_ns_device_result, e_gs_ms_ns_host_result);
return !validator.is_success();
}
return 0;
......
......@@ -390,7 +390,8 @@ int main(int argc, char* argv[])
}
}
return ck::utils::check_err(e_gs_ms_ns_device_result, e_gs_ms_ns_host_result) ? 0 : 1;
validator.check_err(e_gs_ms_ns_device_result, e_gs_ms_ns_host_result);
return !validator.is_success();
}
return 0;
......
......@@ -256,12 +256,13 @@ bool run_grouped_conv_fwd_bias_relu_add(const ExecutionConfig& config,
#ifdef BUILD_INT4_EXAMPLE
const Tensor<OutUserDataType> out_device_converted(out_device);
return ck::utils::check_err(
validator.check_err(
out_device_converted, out_host, "Error: incorrect results!", 1e-5f, 1e-4f);
#else
return ck::utils::check_err(
validator.check_err(
out_device, out_host, "Error: incorrect results!", 1e-5f, 1e-4f);
#endif
return validator.is_success();
}
return true;
......
......@@ -254,12 +254,13 @@ bool run_grouped_conv_fwd_bias_relu_add(const ExecutionConfig& config,
#ifdef BUILD_INT4_EXAMPLE
const Tensor<OutUserDataType> out_device_converted(out_device);
return ck::utils::check_err(
validator.check_err(
out_device_converted, out_host, "Error: incorrect results!", 1e-5f, 1e-4f);
#else
return ck::utils::check_err(
validator.check_err(
out_device, out_host, "Error: incorrect results!", 1e-5f, 1e-4f);
#endif
return validator.is_success();
}
return true;
......
......@@ -191,12 +191,13 @@ bool run_grouped_conv_fwd(const ExecutionConfig& config,
#ifdef BUILD_INT4_EXAMPLE
const Tensor<OutUserDataType> out_device_converted(out_device);
return ck::utils::check_err(
validator.check_err(
out_device_converted.mData, out_host.mData, "Error: incorrect results!", 1e-5f, 1e-4f);
#else
return ck::utils::check_err(
validator.check_err(
out_device.mData, out_host.mData, "Error: incorrect results!", 1e-5f, 1e-4f);
#endif
return validator.is_success();
}
return true;
......
......@@ -270,7 +270,8 @@ bool run_batched_gemm_gemm_example(int argc, char* argv[])
c_g_m_o_device_buf.FromDevice(c_g_m_o_device_result.mData.data());
#endif
return ck::utils::check_err(c_g_m_o_device_result, c_g_m_o_host_result);
validator.check_err(c_g_m_o_device_result, c_g_m_o_host_result);
return validator.is_success();
}
return true;
......
......@@ -254,7 +254,8 @@ int run(int argc, char* argv[])
ref_gemm1_invoker.Run(ref_gemm1_argument);
return ck::utils::check_err(c_g_m_o_device_result.mData, c_g_m_o_host_result.mData) ? 0 : 1;
validator.check_err(c_g_m_o_device_result.mData, c_g_m_o_host_result.mData);
return !validator.is_success();
}
return 0;
......
......@@ -265,13 +265,12 @@ int run(int argc, char* argv[])
atol = 1e-2;
}
return ck::utils::check_err(c_gs_ms_os_device_result.mData,
validator.check_err(c_gs_ms_os_device_result.mData,
c_gs_ms_os_host_result.mData,
"Error: Incorrect results!",
rtol,
atol)
? 0
: 1;
atol);
return !validator.is_success();
}
return 0;
......
......@@ -223,7 +223,7 @@ int run(int argc, char* argv[])
std::cout << "Perf: " << ave_time << " ms, " << tflops << " TFlops, " << gb_per_sec << " GB/s, "
<< gemm.GetTypeString() << std::endl;
bool pass = true;
ck::utils::CorrectnessValidator validator;
if(do_verification)
{
for(std::size_t i = 0; i < group_count; i++)
......@@ -309,11 +309,9 @@ int run(int argc, char* argv[])
self(idx) = c_g_m_o_host_result(g, idx[2], idx[3]);
});
bool pass_ =
ck::utils::check_err(c_gs_ms_os_device_result.mData, c_gs_ms_os_host_result.mData);
pass &= pass_;
validator.check_err(c_gs_ms_os_device_result.mData, c_gs_ms_os_host_result.mData);
}
}
return pass ? 0 : 1;
return !validator.is_success();
}
......@@ -300,15 +300,15 @@ int mean_meansquare_dual_reduce_test(size_t n,
std::cout << "Perf: " << avg_time << " ms, " << gb_per_sec << " GB/s, " << reduce_name
<< std::endl;
bool pass = true;
ck::utils::CorrectnessValidator validator;
if(do_verification)
{
mean_dev.FromDevice(mean.mData.data());
meansquare_dev.FromDevice(meansquare.mData.data());
pass = pass && ck::utils::check_err(mean, mean_ref);
pass = pass && ck::utils::check_err(meansquare, meansquare_ref);
validator.check_err(mean, mean_ref);
validator.check_err(meansquare, meansquare_ref);
};
return (pass ? 0 : 1);
return !validator.is_success();
}
......@@ -338,7 +338,7 @@ bool bnorm_bwd_nhwc_test(bool do_verification,
else
(void)invoker_ptr->Run(argument_ptr.get(), StreamConfig{nullptr, time_kernel});
bool pass = true;
ck::utils::CorrectnessValidator validator;
if(do_verification)
{
......@@ -394,20 +394,20 @@ bool bnorm_bwd_nhwc_test(bool do_verification,
dbias_dev.FromDevice(dbias.data());
// clang-format off
pass = pass && ck::utils::check_err(dbias.mData, dbias_ref.mData, "dBias result:", 2e-4, 2e-4);
pass = pass && ck::utils::check_err(dscale.mData, dscale_ref.mData, "dScale result:", 2e-4, 2e-4);
pass = pass && ck::utils::check_err(dx.mData, dx_ref.mData, "dx result:");
validator.check_err(dbias.mData, dbias_ref.mData, "dBias result:", 2e-4, 2e-4);
validator.check_err(dscale.mData, dscale_ref.mData, "dScale result:", 2e-4, 2e-4);
validator.check_err(dx.mData, dx_ref.mData, "dx result:");
// clang-format on
};
return (pass);
return validator.is_success();
};
static const double epsilon = std::numeric_limits<float>::epsilon();
int main(int argc, char* argv[])
{
bool pass = true;
ck::utils::CorrectnessValidator validator;
if(argc > 1)
{
......
......@@ -308,17 +308,17 @@ bool bnorm_infer_nhwc_test(bool do_verification,
(void)invoker_ptr_ref->Run(argument_ptr_ref.get());
y_dev.FromDevice(y.mData.data());
pass = pass && ck::utils::check_err(y, y_ref);
validator.check_err(y, y_ref);
};
return (pass);
return validator.is_success();
};
static const double epsilon = std::numeric_limits<float>::epsilon();
int main(int argc, char* argv[])
{
bool pass = true;
ck::utils::CorrectnessValidator validator;
if(argc > 1)
{
......
......@@ -362,7 +362,7 @@ bool bnorm_fwd_nhwc_test(bool do_verification,
else
(void)invoker_ptr->Run(argument_ptr.get(), StreamConfig{nullptr, time_kernel});
bool pass = true;
ck::utils::CorrectnessValidator validator;
if(do_verification)
{
......@@ -414,7 +414,7 @@ bool bnorm_fwd_nhwc_test(bool do_verification,
(void)invoker_ptr_ref->Run(argument_ptr_ref.get());
y_dev.FromDevice(y.mData.data());
pass = pass && ck::utils::check_err(y, y_ref, "Incorrect normalized output values");
validator.check_err(y, y_ref, "Incorrect normalized output values");
if(updateMovingAverage)
{
......@@ -424,10 +424,10 @@ bool bnorm_fwd_nhwc_test(bool do_verification,
resultRunningMean_dev.FromDevice(resultRunningMean.mData.data());
resultRunningVariance_dev.FromDevice(resultRunningVariance.mData.data());
pass = pass && ck::utils::check_err(resultRunningMean,
validator.check_err(resultRunningMean,
resultRunningMean_ref,
"Incorrect running mean values");
pass = pass && ck::utils::check_err(resultRunningVariance,
validator.check_err(resultRunningVariance,
resultRunningVariance_ref,
"Incorrect running variance values");
};
......@@ -442,15 +442,15 @@ bool bnorm_fwd_nhwc_test(bool do_verification,
resultSaveMean_dev.FromDevice(resultSaveMean.mData.data());
resultSaveInvVariance_dev.FromDevice(resultSaveInvVariance.mData.data());
pass = pass && ck::utils::check_err(
validator.check_err(
resultSaveMean, resultSaveMean_ref, "Incorrect saved mean values");
pass = pass && ck::utils::check_err(resultSaveInvVariance,
validator.check_err(resultSaveInvVariance,
resultSaveInvVariance_ref,
"Incorrect saved invvariance values");
};
};
return (pass);
return validator.is_success();
};
const double epsilon = std::numeric_limits<float>::epsilon();
......@@ -584,7 +584,7 @@ int main(int argc, char* argv[])
averageFactor,
epsilon);
pass = pass && bnorm_fwd_nhwc_test<ck::half_t, float, false>(true,
bnorm_fwd_nhwc_test<ck::half_t, float, false>(true,
2,
false, // don't time kernel
{128, 16, 3, 1024},
......
......@@ -362,7 +362,7 @@ bool bnorm_fwd_nhwc_test(bool do_verification,
else
(void)invoker_ptr->Run(argument_ptr.get(), StreamConfig{nullptr, time_kernel});
bool pass = true;
ck::utils::CorrectnessValidator validator;
if(do_verification)
{
......@@ -414,7 +414,7 @@ bool bnorm_fwd_nhwc_test(bool do_verification,
(void)invoker_ptr_ref->Run(argument_ptr_ref.get());
y_dev.FromDevice(y.mData.data());
pass = pass && ck::utils::check_err(y, y_ref, "Incorrect normalized output values");
validator.check_err(y, y_ref, "Incorrect normalized output values");
if(updateMovingAverage)
{
......@@ -424,10 +424,10 @@ bool bnorm_fwd_nhwc_test(bool do_verification,
resultRunningMean_dev.FromDevice(resultRunningMean.mData.data());
resultRunningVariance_dev.FromDevice(resultRunningVariance.mData.data());
pass = pass && ck::utils::check_err(resultRunningMean,
validator.check_err(resultRunningMean,
resultRunningMean_ref,
"Incorrect running mean values");
pass = pass && ck::utils::check_err(resultRunningVariance,
validator.check_err(resultRunningVariance,
resultRunningVariance_ref,
"Incorrect running variance values");
};
......@@ -442,15 +442,15 @@ bool bnorm_fwd_nhwc_test(bool do_verification,
resultSaveMean_dev.FromDevice(resultSaveMean.mData.data());
resultSaveInvVariance_dev.FromDevice(resultSaveInvVariance.mData.data());
pass = pass && ck::utils::check_err(
validator.check_err(
resultSaveMean, resultSaveMean_ref, "Incorrect saved mean values");
pass = pass && ck::utils::check_err(resultSaveInvVariance,
validator.check_err(resultSaveInvVariance,
resultSaveInvVariance_ref,
"Incorrect saved invvariance values");
};
};
return (pass);
return validator.is_success();
};
const double epsilon = std::numeric_limits<float>::epsilon();
......
......@@ -121,7 +121,7 @@ bool run_splitK_gemm(const ProblemSize& problem_size, const ExecutionConfig& con
}
invoker.Run(argument, StreamConfig{nullptr, false});
bool pass = true;
ck::utils::CorrectnessValidator validator;
if(config.do_verification)
{
......@@ -146,12 +146,12 @@ bool run_splitK_gemm(const ProblemSize& problem_size, const ExecutionConfig& con
if(std::is_same<CDataType, ck::half_t>::value)
{
pass &= ck::utils::check_err(
validator.check_err(
c_m_n_device_result, c_m_n_host_result, "fp16 incorrect result", 3e-3, 1e-3);
}
else
{
pass &= ck::utils::check_err(c_m_n_device_result, c_m_n_host_result);
validator.check_err(c_m_n_device_result, c_m_n_host_result);
}
}
......@@ -169,7 +169,7 @@ bool run_splitK_gemm(const ProblemSize& problem_size, const ExecutionConfig& con
<< " GB/s, " << gemm.GetTypeString() << std::endl;
}
return pass;
return validator.is_success();
}
bool run_splitK_gemm_example(int argc, char* argv[])
......
......@@ -155,7 +155,7 @@ int main()
auto invoker_ptr = device_instance.MakeInvokerPointer();
float time_ms = invoker_ptr->Run(argument_ptr.get(), StreamConfig{nullptr, time_kernel});
bool pass = true;
ck::utils::CorrectnessValidator validator;
{
Tensor<OutType> out_from_dev(f_host_tensor_desc_2d(index_length, current_dim));
ReferenceInstance ref;
......@@ -176,7 +176,7 @@ int main()
ref_invoker.Run(ref_argument);
out_dev.FromDevice(out_from_dev.mData.data());
pass &= ck::utils::check_err(out_from_dev, out, "Error: Incorrect results", 1e-3, 1e-3);
validator.check_err(out_from_dev, out, "Error: Incorrect results", 1e-3, 1e-3);
}
double total_read = current_dim * index_length * 3 * sizeof(EmbType) +
......@@ -186,7 +186,7 @@ int main()
double gbps = (total_read + total_write) / time_ms / 1e6;
std::cout << ", total bytes:" << (total_read + total_write) << ", time:" << time_ms
<< ", gbps:" << gbps << ", valid:" << (pass ? "y" : "n") << std::endl
<< ", gbps:" << gbps << ", valid:" << (validator.is_success() ? "y" : "n") << std::endl
<< std::flush;
});
......
......@@ -513,8 +513,9 @@ int main(int argc, char* argv[])
e1_g_m_o_host_result.ForEach([&](auto&, auto idx) {
cde1_element_op(e1_g_m_o_host_result(idx), c1_g_m_o(idx), d1_g_m_o(idx));
});
return ck::utils::check_err(e1_g_m_o_device_result, e1_g_m_o_host_result) ? 0 : 1;
ck::utils::CorrectnessValidator validator;
validator.check_err(e1_g_m_o_device_result, e1_g_m_o_host_result);
return !validator.is_success();
}
return 0;
......
......@@ -156,8 +156,9 @@ bool run_conv_bwd_data_bias_relu(const ExecutionConfig& config,
[&](auto&, auto idx) { in_element_op(in_host(idx), c_host(idx), bias(idx)); });
in_device_buf.FromDevice(in_device.mData.data());
return ck::utils::check_err(in_device, in_host);
ck::utils::CorrectnessValidator validator;
validator.check_err(in_device, in_host);
return validator.is_success();
}
return true;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment