diff options
author | Arne Juul <arnej@verizonmedia.com> | 2021-01-20 12:00:14 +0000 |
---|---|---|
committer | Arne Juul <arnej@verizonmedia.com> | 2021-01-20 12:00:14 +0000 |
commit | d9de256ebd110b89cd3a0fd379a9993da2a1c753 (patch) | |
tree | 89f54ffb508aae869e52b4b3b00a0fbc27b0cb73 /eval/src/tests/instruction/mixed_inner_product_function | |
parent | 54d51a45c008773c3b65da62969b4c40bce3f52d (diff) |
also test without optimization
Diffstat (limited to 'eval/src/tests/instruction/mixed_inner_product_function')
-rw-r--r-- | eval/src/tests/instruction/mixed_inner_product_function/mixed_inner_product_function_test.cpp | 32 |
1 files changed, 19 insertions, 13 deletions
diff --git a/eval/src/tests/instruction/mixed_inner_product_function/mixed_inner_product_function_test.cpp b/eval/src/tests/instruction/mixed_inner_product_function/mixed_inner_product_function_test.cpp index 0c91a7f9b70..b71b2c4d74c 100644 --- a/eval/src/tests/instruction/mixed_inner_product_function/mixed_inner_product_function_test.cpp +++ b/eval/src/tests/instruction/mixed_inner_product_function/mixed_inner_product_function_test.cpp @@ -56,29 +56,35 @@ EvalFixture::ParamRepo make_params() { EvalFixture::ParamRepo param_repo = make_params(); void assert_mixed_optimized(const vespalib::string &expr) { - EvalFixture fixture(prod_factory, expr, param_repo, true); - EXPECT_EQ(fixture.result(), EvalFixture::ref(expr, param_repo)); - auto info = fixture.find_all<MixedInnerProductFunction>(); + EvalFixture slow_fixture(prod_factory, expr, param_repo, false); + EvalFixture fast_fixture(prod_factory, expr, param_repo, true); + EXPECT_EQ(slow_fixture.result(), EvalFixture::ref(expr, param_repo)); + EXPECT_EQ(fast_fixture.result(), EvalFixture::ref(expr, param_repo)); + auto info = fast_fixture.find_all<MixedInnerProductFunction>(); ASSERT_EQ(info.size(), 1u); EXPECT_TRUE(info[0]->result_is_mutable()); } void assert_not_mixed_optimized(const vespalib::string &expr) { - EvalFixture fixture(prod_factory, expr, param_repo, true); - EXPECT_EQ(fixture.result(), EvalFixture::ref(expr, param_repo)); - auto info = fixture.find_all<MixedInnerProductFunction>(); + EvalFixture slow_fixture(prod_factory, expr, param_repo, false); + EvalFixture fast_fixture(prod_factory, expr, param_repo, true); + EXPECT_EQ(slow_fixture.result(), EvalFixture::ref(expr, param_repo)); + EXPECT_EQ(fast_fixture.result(), EvalFixture::ref(expr, param_repo)); + auto info = fast_fixture.find_all<MixedInnerProductFunction>(); ASSERT_EQ(info.size(), 0u); } void assert_dense_optimized(const vespalib::string &expr) { - EvalFixture fixture(prod_factory, expr, param_repo, true); - EXPECT_EQ(fixture.result(), EvalFixture::ref(expr, param_repo)); - auto info = fixture.find_all<MixedInnerProductFunction>(); + EvalFixture slow_fixture(prod_factory, expr, param_repo, false); + EvalFixture fast_fixture(prod_factory, expr, param_repo, true); + EXPECT_EQ(slow_fixture.result(), EvalFixture::ref(expr, param_repo)); + EXPECT_EQ(fast_fixture.result(), EvalFixture::ref(expr, param_repo)); + auto info = fast_fixture.find_all<MixedInnerProductFunction>(); ASSERT_EQ(info.size(), 0u); - auto info2 = fixture.find_all<DenseDotProductFunction>(); - auto info3 = fixture.find_all<DenseMatMulFunction>(); - auto info4 = fixture.find_all<DenseMultiMatMulFunction>(); - auto info5 = fixture.find_all<DenseXWProductFunction>(); + auto info2 = fast_fixture.find_all<DenseDotProductFunction>(); + auto info3 = fast_fixture.find_all<DenseMatMulFunction>(); + auto info4 = fast_fixture.find_all<DenseMultiMatMulFunction>(); + auto info5 = fast_fixture.find_all<DenseXWProductFunction>(); ASSERT_EQ(info2.size() + info3.size() + info4.size() + info5.size(), 1u); } |