Commit 4487d4c9 authored by Umang Yadav's avatar Umang Yadav
Browse files

fix the argument order, add atol,rtols etc.

parent 31b55797
......@@ -44,9 +44,9 @@ TEST_CASE(reverse_test_axis0)
auto result = p.eval({}).back();
std::vector<float> results_vector;
result.visit([&](auto output) { results_vector.assign(output.begin(), output.end()); });
std::vector<float> target_data = data;
std::swap_ranges(target_data.begin(), target_data.begin() + 16, target_data.begin() + 16);
EXPECT(migraphx::verify::verify_range(results_vector, target_data));
std::vector<float> gold = data;
std::swap_ranges(gold.begin(), gold.begin() + 16, gold.begin() + 16);
EXPECT(migraphx::verify::verify_range(results_vector, gold));
}
TEST_CASE(reverse_test_axis1)
......@@ -63,10 +63,10 @@ TEST_CASE(reverse_test_axis1)
auto result = p.eval({}).back();
std::vector<float> results_vector;
result.visit([&](auto output) { results_vector.assign(output.begin(), output.end()); });
std::vector<float> target_data = data;
std::reverse(target_data.begin(), target_data.begin() + 16);
std::reverse(target_data.end() - 16, target_data.end());
EXPECT(migraphx::verify::verify_range(results_vector, target_data));
std::vector<float> gold = data;
std::reverse(gold.begin(), gold.begin() + 16);
std::reverse(gold.end() - 16, gold.end());
EXPECT(migraphx::verify::verify_range(results_vector, gold));
}
TEST_CASE(reverse_test_axis10)
......@@ -83,9 +83,9 @@ TEST_CASE(reverse_test_axis10)
auto result = p.eval({}).back();
std::vector<float> results_vector;
result.visit([&](auto output) { results_vector.assign(output.begin(), output.end()); });
std::vector<float> target_data = data;
std::reverse(target_data.begin(), target_data.begin() + 16);
std::reverse(target_data.end() - 16, target_data.end());
std::swap_ranges(target_data.begin(), target_data.begin() + 16, target_data.begin() + 16);
EXPECT(migraphx::verify::verify_range(results_vector, target_data));
std::vector<float> gold = data;
std::reverse(gold.begin(), gold.begin() + 16);
std::reverse(gold.end() - 16, gold.end());
std::swap_ranges(gold.begin(), gold.begin() + 16, gold.begin() + 16);
EXPECT(migraphx::verify::verify_range(results_vector, gold));
}
......@@ -1008,7 +1008,8 @@ TEST_CASE(rnn_fp16)
std::vector<float> last_output_data_gold{
0.2935145, -0.23719997, -0.31123261, -0.18357255, 0., 0., 0., 0.};
EXPECT(migraphx::verify::verify_range_with_threshold(last_output_data, migraphx::verify::expected{last_output_data_gold}, 0.005));
EXPECT(migraphx::verify::verify_range_with_threshold(
last_output_data, migraphx::verify::expected{last_output_data_gold}, migraphx::verify::threshold{0.005}));
}
TEST_CASE(gru_forward)
......@@ -2983,7 +2984,8 @@ TEST_CASE(gru_fp16)
-0.3969709, 0.43360898, 0.35775262, 0.23280787, -0.52179873,
-0.21944991, 0.4535257, -0.13735442, 0.51757574, 0.50380427};
EXPECT(migraphx::verify::verify_range_with_threshold(hs_data, migraphx::verify::expected{hs_data_gold}, 0.005));
EXPECT(migraphx::verify::verify_range_with_threshold(
hs_data, migraphx::verify::expected{hs_data_gold}, migraphx::verify::threshold{0.005}));
}
TEST_CASE(lstm_forward)
......
......@@ -35,7 +35,7 @@ TEST_CASE(softmax_simple_test)
migraphx::program p;
auto* mm = p.get_main_module();
std::vector<float> a = {0.25, 0.75};
std::vector<float> s = {0.377541, 0.622459};
std::vector<float> gold = {0.377541, 0.622459};
migraphx::shape a_shape{migraphx::shape::float_type, {1, 2}};
auto al = mm->add_literal(migraphx::literal{a_shape, a});
mm->add_instruction(migraphx::make_op("softmax", {{"axis", 1}}), al);
......@@ -43,7 +43,7 @@ TEST_CASE(softmax_simple_test)
auto result = p.eval({}).back();
std::vector<float> results_vector(2);
result.visit([&](auto output) { results_vector.assign(output.begin(), output.end()); });
EXPECT(migraphx::verify::verify_range(results_vector, s));
EXPECT(migraphx::verify::verify_range(results_vector, gold));
}
TEST_CASE(softmax_test)
......@@ -76,7 +76,7 @@ TEST_CASE(softmax_test)
2.02392387e+00, -9.42091495e-02, -3.77683818e-01, 2.05638766e+00, 2.93796062e-01,
-6.02131486e-01, 2.70461679e-01, -8.92358482e-01, 1.04388881e+00, 2.66154885e-01};
std::vector<float> s = {
std::vector<float> gold = {
0.30191708, 0.59879845, 0.50029165, 0.24915339, 0.36823985, 0.13190967, 0.0349741,
0.18750034, 0.21905553, 0.27000085, 0.0547399, 0.56318235, 0.47422904, 0.78964758,
0.91381913, 0.44601166, 0.47902739, 0.13120073, 0.4449684, 0.18766427, 0.15753111,
......@@ -103,7 +103,7 @@ TEST_CASE(softmax_test)
auto result = p.eval({}).back();
std::vector<float> results_vector(120);
result.visit([&](auto output) { results_vector.assign(output.begin(), output.end()); });
EXPECT(migraphx::verify::verify_range(results_vector, s));
EXPECT(migraphx::verify::verify_range(results_vector, gold));
}
TEST_CASE(softmax_dyn_test)
......@@ -147,7 +147,7 @@ TEST_CASE(softmax_dyn_test)
auto result = p.eval(params).back();
std::vector<float> results_vector(120);
result.visit([&](auto output) { results_vector.assign(output.begin(), output.end()); });
std::vector<float> s = {
std::vector<float> gold = {
0.30191708, 0.59879845, 0.50029165, 0.24915339, 0.36823985, 0.13190967, 0.0349741,
0.18750034, 0.21905553, 0.27000085, 0.0547399, 0.56318235, 0.47422904, 0.78964758,
0.91381913, 0.44601166, 0.47902739, 0.13120073, 0.4449684, 0.18766427, 0.15753111,
......@@ -166,5 +166,5 @@ TEST_CASE(softmax_dyn_test)
0.13268511, 0.61795473, 0.49703068, 0.41696799, 0.10175809, 0.71028161, 0.29929739,
0.17377149, 0.76075399, 0.20071237, 0.32632929, 0.36892858, 0.09416146, 0.26656723,
0.42914796};
EXPECT(migraphx::verify::verify_range(results_vector, s));
EXPECT(migraphx::verify::verify_range(results_vector, gold));
}
......@@ -140,8 +140,17 @@ TEST_CASE(handling_tensors)
-0.06269585, 0.18658121, -0.03944227, 0.0111798, -0.17731084, 0.11789055, -0.09982193,
0.08142821, 0.0729029, 0.11303909, 0.12735154, 0.03885292};
// Create the arguments in a parameter_map
migraphx::parameter_map params;
params["X"] = migraphx::argument(input_shape, a.data());
params["W"] = migraphx::argument(weights_shape, c.data());
// Evaluate and confirm the result
auto result = p.eval(params).back();
std::vector<float> results_vector(64);
result.visit([&](auto output) { results_vector.assign(output.begin(), output.end()); });
// Solution vector
std::vector<float> sol = {-0.20817225,
std::vector<float> gold = {-0.20817225,
0.87965256,
0.14958936,
-1.24887264,
......@@ -158,17 +167,7 @@ TEST_CASE(handling_tensors)
-0.16138598,
0.79344082};
// Create the arguments in a parameter_map
migraphx::parameter_map params;
params["X"] = migraphx::argument(input_shape, a.data());
params["W"] = migraphx::argument(weights_shape, c.data());
// Evaluate and confirm the result
auto result = p.eval(params).back();
std::vector<float> results_vector(64);
result.visit([&](auto output) { results_vector.assign(output.begin(), output.end()); });
EXPECT(migraphx::verify::verify_range(results_vector, sol));
EXPECT(migraphx::verify::verify_range(results_vector, gold));
}
int main(int argc, const char* argv[]) { test::run(argc, argv); }
......@@ -251,7 +251,7 @@ void run_verify::verify(const std::string& name,
std::size_t num = gold.size();
for(std::size_t i = 0; ((i < num) and passed); ++i)
{
passed &= migraphx::verify_args(tname, gold[i], result[i]);
passed &= migraphx::verify_args(tname, result[i], gold[i]);
}
if(not passed or migraphx::enabled(MIGRAPHX_TRACE_TEST{}))
......
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