mirror of
https://github.com/ROCm/composable_kernel.git
synced 2026-07-13 02:27:33 +00:00
miopen test case
This commit is contained in:
@@ -50,95 +50,99 @@ class TestGroupedConvndFwd : public ::testing::Test
|
||||
|
||||
using namespace ck::tensor_layout::convolution;
|
||||
|
||||
using KernelTypes1d = ::testing::Types<std::tuple<float, GNWC, GKXC, GNWK>,
|
||||
std::tuple<ck::half_t, GNWC, GKXC, GNWK>,
|
||||
std::tuple<ck::bhalf_t, GNWC, GKXC, GNWK>,
|
||||
std::tuple<int8_t, GNWC, GKXC, GNWK>>;
|
||||
// using KernelTypes1d = ::testing::Types<std::tuple<float, GNWC, GKXC, GNWK>,
|
||||
// std::tuple<ck::half_t, GNWC, GKXC, GNWK>,
|
||||
// std::tuple<ck::bhalf_t, GNWC, GKXC, GNWK>,
|
||||
// std::tuple<int8_t, GNWC, GKXC, GNWK>>;
|
||||
|
||||
using KernelTypes2d = ::testing::Types<std::tuple<float, GNHWC, GKYXC, GNHWK>,
|
||||
std::tuple<ck::half_t, GNHWC, GKYXC, GNHWK>,
|
||||
std::tuple<ck::bhalf_t, GNHWC, GKYXC, GNHWK>,
|
||||
std::tuple<float, NHWGC, GKYXC, NHWGK>,
|
||||
std::tuple<ck::half_t, NHWGC, GKYXC, NHWGK>,
|
||||
std::tuple<ck::bhalf_t, NHWGC, GKYXC, NHWGK>,
|
||||
std::tuple<int8_t, NHWGC, GKYXC, NHWGK>,
|
||||
std::tuple<float, NGCHW, GKYXC, NGKHW>,
|
||||
std::tuple<ck::half_t, NGCHW, GKYXC, NGKHW>,
|
||||
// using KernelTypes2d = ::testing::Types<std::tuple<float, GNHWC, GKYXC, GNHWK>,
|
||||
// std::tuple<ck::half_t, GNHWC, GKYXC, GNHWK>,
|
||||
// std::tuple<ck::bhalf_t, GNHWC, GKYXC, GNHWK>,
|
||||
// std::tuple<float, NHWGC, GKYXC, NHWGK>,
|
||||
// std::tuple<ck::half_t, NHWGC, GKYXC, NHWGK>,
|
||||
// std::tuple<ck::bhalf_t, NHWGC, GKYXC, NHWGK>,
|
||||
// std::tuple<int8_t, NHWGC, GKYXC, NHWGK>,
|
||||
// std::tuple<float, NGCHW, GKYXC, NGKHW>,
|
||||
// std::tuple<ck::half_t, NGCHW, GKYXC, NGKHW>,
|
||||
// std::tuple<int8_t, NGCHW, GKYXC, NGKHW>>;
|
||||
|
||||
using KernelTypes2d = ::testing::Types<std::tuple<int8_t, NHWGC, GKYXC, NHWGK>,
|
||||
std::tuple<int8_t, NGCHW, GKYXC, NGKHW>>;
|
||||
|
||||
using KernelTypes3d = ::testing::Types<std::tuple<float, GNDHWC, GKZYXC, GNDHWK>,
|
||||
std::tuple<ck::half_t, GNDHWC, GKZYXC, GNDHWK>,
|
||||
std::tuple<ck::bhalf_t, GNDHWC, GKZYXC, GNDHWK>,
|
||||
std::tuple<int8_t, GNDHWC, GKZYXC, GNDHWK>,
|
||||
std::tuple<float, NDHWGC, GKZYXC, NDHWGK>,
|
||||
std::tuple<ck::half_t, NDHWGC, GKZYXC, NDHWGK>,
|
||||
std::tuple<ck::bhalf_t, NDHWGC, GKZYXC, NDHWGK>,
|
||||
std::tuple<int8_t, NDHWGC, GKZYXC, NDHWGK>>;
|
||||
// using KernelTypes3d = ::testing::Types<std::tuple<float, GNDHWC, GKZYXC, GNDHWK>,
|
||||
// std::tuple<ck::half_t, GNDHWC, GKZYXC, GNDHWK>,
|
||||
// std::tuple<ck::bhalf_t, GNDHWC, GKZYXC, GNDHWK>,
|
||||
// std::tuple<int8_t, GNDHWC, GKZYXC, GNDHWK>,
|
||||
// std::tuple<float, NDHWGC, GKZYXC, NDHWGK>,
|
||||
// std::tuple<ck::half_t, NDHWGC, GKZYXC, NDHWGK>,
|
||||
// std::tuple<ck::bhalf_t, NDHWGC, GKZYXC, NDHWGK>,
|
||||
// std::tuple<int8_t, NDHWGC, GKZYXC, NDHWGK>>;
|
||||
|
||||
template <typename Tuple>
|
||||
class TestGroupedConvndFwd1d : public TestGroupedConvndFwd<Tuple>
|
||||
{
|
||||
};
|
||||
// template <typename Tuple>
|
||||
// class TestGroupedConvndFwd1d : public TestGroupedConvndFwd<Tuple>
|
||||
// {
|
||||
// };
|
||||
|
||||
template <typename Tuple>
|
||||
class TestGroupedConvndFwd2d : public TestGroupedConvndFwd<Tuple>
|
||||
{
|
||||
};
|
||||
|
||||
template <typename Tuple>
|
||||
class TestGroupedConvndFwd3d : public TestGroupedConvndFwd<Tuple>
|
||||
{
|
||||
};
|
||||
// template <typename Tuple>
|
||||
// class TestGroupedConvndFwd3d : public TestGroupedConvndFwd<Tuple>
|
||||
// {
|
||||
// };
|
||||
|
||||
TYPED_TEST_SUITE(TestGroupedConvndFwd1d, KernelTypes1d);
|
||||
// TYPED_TEST_SUITE(TestGroupedConvndFwd1d, KernelTypes1d);
|
||||
TYPED_TEST_SUITE(TestGroupedConvndFwd2d, KernelTypes2d);
|
||||
TYPED_TEST_SUITE(TestGroupedConvndFwd3d, KernelTypes3d);
|
||||
// TYPED_TEST_SUITE(TestGroupedConvndFwd3d, KernelTypes3d);
|
||||
|
||||
TYPED_TEST(TestGroupedConvndFwd1d, Test1D)
|
||||
{
|
||||
this->conv_params.clear();
|
||||
this->conv_params.push_back({1, 2, 32, 128, 256, {1}, {14}, {2}, {1}, {0}, {0}});
|
||||
this->conv_params.push_back({1, 2, 32, 128, 256, {3}, {28}, {1}, {1}, {1}, {1}});
|
||||
this->conv_params.push_back({1, 2, 32, 128, 256, {1}, {3}, {1}, {1}, {0}, {0}});
|
||||
this->conv_params.push_back({1, 1, 1, 1, 32, {3}, {32}, {1}, {1}, {1}, {1}});
|
||||
this->conv_params.push_back({1, 1, 1, 64, 3, {3}, {32}, {1}, {1}, {1}, {1}});
|
||||
this->conv_params.push_back({1, 96, 1, 1, 1, {3}, {512}, {1}, {1}, {1}, {1}});
|
||||
this->template Run<1>();
|
||||
}
|
||||
// TYPED_TEST(TestGroupedConvndFwd1d, Test1D)
|
||||
// {
|
||||
// this->conv_params.clear();
|
||||
// this->conv_params.push_back({1, 2, 32, 128, 256, {1}, {14}, {2}, {1}, {0}, {0}});
|
||||
// this->conv_params.push_back({1, 2, 32, 128, 256, {3}, {28}, {1}, {1}, {1}, {1}});
|
||||
// this->conv_params.push_back({1, 2, 32, 128, 256, {1}, {3}, {1}, {1}, {0}, {0}});
|
||||
// this->conv_params.push_back({1, 1, 1, 1, 32, {3}, {32}, {1}, {1}, {1}, {1}});
|
||||
// this->conv_params.push_back({1, 1, 1, 64, 3, {3}, {32}, {1}, {1}, {1}, {1}});
|
||||
// this->conv_params.push_back({1, 96, 1, 1, 1, {3}, {512}, {1}, {1}, {1}, {1}});
|
||||
// this->template Run<1>();
|
||||
// }
|
||||
|
||||
TYPED_TEST(TestGroupedConvndFwd2d, Test2D)
|
||||
{
|
||||
this->conv_params.clear();
|
||||
this->conv_params.push_back(
|
||||
{2, 2, 32, 128, 256, {1, 1}, {7, 7}, {2, 2}, {1, 1}, {0, 0}, {0, 0}});
|
||||
this->conv_params.push_back(
|
||||
{2, 2, 32, 128, 256, {3, 3}, {14, 14}, {1, 1}, {1, 1}, {1, 1}, {1, 1}});
|
||||
this->conv_params.push_back(
|
||||
{2, 2, 32, 128, 256, {1, 1}, {3, 3}, {1, 1}, {1, 1}, {0, 0}, {0, 0}});
|
||||
this->conv_params.push_back({2, 1, 1, 1, 32, {3, 3}, {32, 32}, {1, 1}, {1, 1}, {1, 1}, {1, 1}});
|
||||
this->conv_params.push_back({2, 1, 1, 64, 3, {3, 3}, {32, 32}, {1, 1}, {1, 1}, {1, 1}, {1, 1}});
|
||||
this->conv_params.push_back({2, 1, 1, 1, 1, {3, 3}, {32, 32}, {1, 1}, {1, 1}, {1, 1}, {1, 1}});
|
||||
this->conv_params.push_back(
|
||||
{2, 96, 1, 1, 1, {3, 3}, {120, 160}, {1, 1}, {1, 1}, {1, 1}, {1, 1}});
|
||||
this->conv_params.push_back({2, 1, 256, 192, 192, {3, 3}, {28, 28}, {1, 1}, {1, 1}, {0, 0}, {0, 0}});
|
||||
// this->conv_params.push_back(
|
||||
// {2, 2, 32, 128, 256, {1, 1}, {7, 7}, {2, 2}, {1, 1}, {0, 0}, {0, 0}});
|
||||
// this->conv_params.push_back(
|
||||
// {2, 2, 32, 128, 256, {3, 3}, {14, 14}, {1, 1}, {1, 1}, {1, 1}, {1, 1}});
|
||||
// this->conv_params.push_back(
|
||||
// {2, 2, 32, 128, 256, {1, 1}, {3, 3}, {1, 1}, {1, 1}, {0, 0}, {0, 0}});
|
||||
// this->conv_params.push_back({2, 1, 1, 1, 32, {3, 3}, {32, 32}, {1, 1}, {1, 1}, {1, 1}, {1, 1}});
|
||||
// this->conv_params.push_back({2, 1, 1, 64, 3, {3, 3}, {32, 32}, {1, 1}, {1, 1}, {1, 1}, {1, 1}});
|
||||
// this->conv_params.push_back({2, 1, 1, 1, 1, {3, 3}, {32, 32}, {1, 1}, {1, 1}, {1, 1}, {1, 1}});
|
||||
// this->conv_params.push_back(
|
||||
// {2, 96, 1, 1, 1, {3, 3}, {120, 160}, {1, 1}, {1, 1}, {1, 1}, {1, 1}});
|
||||
this->template Run<2>();
|
||||
}
|
||||
|
||||
TYPED_TEST(TestGroupedConvndFwd3d, Test3D)
|
||||
{
|
||||
this->conv_params.clear();
|
||||
this->conv_params.push_back(
|
||||
{3, 2, 32, 128, 256, {1, 1, 1}, {7, 7, 7}, {2, 2, 2}, {1, 1, 1}, {0, 0, 0}, {0, 0, 0}});
|
||||
this->conv_params.push_back(
|
||||
{3, 2, 32, 128, 256, {3, 3, 3}, {14, 14, 3}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}});
|
||||
this->conv_params.push_back(
|
||||
{3, 2, 32, 128, 256, {1, 1, 1}, {3, 3, 3}, {1, 1, 1}, {1, 1, 1}, {0, 0, 0}, {0, 0, 0}});
|
||||
this->conv_params.push_back(
|
||||
{3, 1, 1, 1, 32, {3, 3, 3}, {32, 32, 32}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}});
|
||||
this->conv_params.push_back(
|
||||
{3, 1, 1, 64, 3, {3, 3, 3}, {32, 32, 32}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}});
|
||||
this->conv_params.push_back(
|
||||
{3, 1, 1, 1, 1, {3, 3, 3}, {32, 32, 32}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}});
|
||||
this->conv_params.push_back(
|
||||
{3, 96, 1, 1, 1, {3, 3, 3}, {4, 30, 160}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}});
|
||||
this->template Run<3>();
|
||||
}
|
||||
// TYPED_TEST(TestGroupedConvndFwd3d, Test3D)
|
||||
// {
|
||||
// this->conv_params.clear();
|
||||
// this->conv_params.push_back(
|
||||
// {3, 2, 32, 128, 256, {1, 1, 1}, {7, 7, 7}, {2, 2, 2}, {1, 1, 1}, {0, 0, 0}, {0, 0, 0}});
|
||||
// this->conv_params.push_back(
|
||||
// {3, 2, 32, 128, 256, {3, 3, 3}, {14, 14, 3}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}});
|
||||
// this->conv_params.push_back(
|
||||
// {3, 2, 32, 128, 256, {1, 1, 1}, {3, 3, 3}, {1, 1, 1}, {1, 1, 1}, {0, 0, 0}, {0, 0, 0}});
|
||||
// this->conv_params.push_back(
|
||||
// {3, 1, 1, 1, 32, {3, 3, 3}, {32, 32, 32}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}});
|
||||
// this->conv_params.push_back(
|
||||
// {3, 1, 1, 64, 3, {3, 3, 3}, {32, 32, 32}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}});
|
||||
// this->conv_params.push_back(
|
||||
// {3, 1, 1, 1, 1, {3, 3, 3}, {32, 32, 32}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}});
|
||||
// this->conv_params.push_back(
|
||||
// {3, 96, 1, 1, 1, {3, 3, 3}, {4, 30, 160}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}, {1, 1, 1}});
|
||||
// this->template Run<3>();
|
||||
// }
|
||||
|
||||
Reference in New Issue
Block a user