// Copyright © Advanced Micro Devices, Inc., or its affiliates. // SPDX-License-Identifier: MIT #pragma once #include #include #include #include #include #include namespace gpu_rmsnorm_ref_test { struct RMSNormTestCase { std::vector ioDims; std::vector scaleDims; hipdnn_data_sdk::utilities::TensorLayout layout; friend std::ostream& operator<<(std::ostream& os, const RMSNormTestCase& tc) { os << "(io dims: "; hipdnn_data_sdk::utilities::vecToStream(os, tc.ioDims); os << " scale dims: "; hipdnn_data_sdk::utilities::vecToStream(os, tc.scaleDims); os << " layout:" << tc.layout.name; os << ")"; return os; } }; template void assertAllClose(hipdnn_data_sdk::utilities::TensorBase& expected, hipdnn_data_sdk::utilities::TensorBase& actual, float tolerance) { auto validator = hipdnn_gpu_ref::GpuFpReferenceValidation(tolerance, 0.0f); ASSERT_TRUE(validator.allClose(expected, actual)); } } // namespace gpu_rmsnorm_ref_test