#pragma once #include "./checker.h" #include "megdnn/oprs.h" namespace megdnn { namespace test { class SVDTestcase { std::unique_ptr m_mem; SVDTestcase(const SVDForward::Param& param, const TensorLayout& mat) : m_param{param}, m_mat{nullptr, mat} {} public: SVDForward::Param m_param; TensorND m_mat; struct Result { std::shared_ptr u; std::shared_ptr s; std::shared_ptr vt; std::shared_ptr recovered_mat; }; Result run(SVDForward* opr); static std::vector make(); }; } // namespace test } // namespace megdnn // vim: syntax=cpp.doxygen