Merge commit '0f10e6d9218ce9d00a34a66572c0686dce1e45ea' into develop

This commit is contained in:
assistant-librarian[bot]
2025-09-29 11:12:04 +00:00
parent 2593ecf5b5
commit f9767142cf
16 changed files with 198 additions and 55 deletions

View File

@@ -1,6 +1,3 @@
if(GPU_TARGETS MATCHES "gfx9|gfx11|gfx12")
add_gtest_executable(test_ck_tile_elementwise_1d test_elementwise_1d.cpp)
if(result EQUAL 0)
target_link_libraries(test_ck_tile_elementwise_1d PRIVATE utility)
endif()
endif()
endif()

View File

@@ -2,4 +2,11 @@
// Copyright (c) 2024-2025, Advanced Micro Devices, Inc. All rights reserved.
#include "test_gemm_pipeline_basic_run_test.inc"
int main() { return run_gemm_combinations<ck_tile::bf16_t>(); }
int main()
{
bool is_success = true;
is_success = run_gemm_combinations<ck_tile::bf16_t>() && is_success;
is_success =
run_gemm_combinations<ck_tile::bf16_t, ck_tile::pk_int4_t, ck_tile::bf16_t>() && is_success;
return is_success ? EXIT_SUCCESS : EXIT_FAILURE;
}

View File

@@ -2,4 +2,12 @@
// Copyright (c) 2024-2025, Advanced Micro Devices, Inc. All rights reserved.
#include "test_gemm_pipeline_basic_run_test.inc"
int main() { return run_gemm_combinations<ck_tile::bf8_t, ck_tile::bf8_t, ck_tile::half_t>(); }
int main()
{
bool is_success = true;
is_success =
run_gemm_combinations<ck_tile::bf8_t, ck_tile::bf8_t, ck_tile::half_t>() && is_success;
is_success =
run_gemm_combinations<ck_tile::bf8_t, ck_tile::pk_int4_t, ck_tile::half_t>() && is_success;
return is_success ? EXIT_SUCCESS : EXIT_FAILURE;
}

View File

@@ -2,4 +2,13 @@
// Copyright (c) 2024-2025, Advanced Micro Devices, Inc. All rights reserved.
#include "test_gemm_pipeline_basic_run_test.inc"
int main() { return run_gemm_combinations<ck_tile::half_t>(); }
int main()
{
bool is_success = true;
is_success = run_gemm_combinations<ck_tile::half_t>() && is_success;
#if 0
is_success =
run_gemm_combinations<ck_tile::half_t, ck_tile::pk_int4_t, ck_tile::half_t>() && is_success;
#endif
return is_success ? EXIT_SUCCESS : EXIT_FAILURE;
}

View File

@@ -2,4 +2,12 @@
// Copyright (c) 2024-2025, Advanced Micro Devices, Inc. All rights reserved.
#include "test_gemm_pipeline_basic_run_test.inc"
int main() { return run_gemm_combinations<ck_tile::fp8_t, ck_tile::fp8_t, ck_tile::half_t>(); }
int main()
{
bool is_success = true;
is_success =
run_gemm_combinations<ck_tile::fp8_t, ck_tile::fp8_t, ck_tile::half_t>() && is_success;
is_success =
run_gemm_combinations<ck_tile::fp8_t, ck_tile::pk_int4_t, ck_tile::half_t>() && is_success;
return is_success ? EXIT_SUCCESS : EXIT_FAILURE;
}

View File

@@ -225,7 +225,7 @@ bool run_gemm_test(int argc, char* argv[])
}
template <typename APrecType, typename BPrecType = APrecType, typename CPrecType = APrecType>
int run_gemm_combinations()
bool run_gemm_combinations()
{
// Define possible values for each parameter
std::vector<std::string> m_values = {"128", "1024"};
@@ -304,5 +304,5 @@ int run_gemm_combinations()
}
}
}
return is_success ? EXIT_SUCCESS : EXIT_FAILURE;
return is_success;
}

View File

@@ -263,6 +263,15 @@ struct GemmTypeConfig<ck_tile::bf16_t, ck_tile::bf16_t, ck_tile::bf16_t>
using CDataType = ck_tile::bf16_t;
};
template <>
struct GemmTypeConfig<ck_tile::bf16_t, ck_tile::pk_int4_t, ck_tile::bf16_t>
{
using ADataType = ck_tile::bf16_t;
using BDataType = ck_tile::pk_int4_t;
using AccDataType = float;
using CDataType = ck_tile::bf16_t;
};
template <>
struct GemmTypeConfig<ck_tile::fp8_t, ck_tile::fp8_t, ck_tile::half_t>
{
@@ -281,6 +290,15 @@ struct GemmTypeConfig<ck_tile::bf8_t, ck_tile::bf8_t, ck_tile::half_t>
using CDataType = ck_tile::half_t;
};
template <>
struct GemmTypeConfig<ck_tile::bf8_t, ck_tile::pk_int4_t, ck_tile::half_t>
{
using ADataType = ck_tile::bf8_t;
using BDataType = ck_tile::pk_int4_t;
using AccDataType = float;
using CDataType = ck_tile::half_t;
};
template <>
struct GemmTypeConfig<ck_tile::half_t, ck_tile::pk_int4_t, ck_tile::half_t>
{
@@ -290,6 +308,15 @@ struct GemmTypeConfig<ck_tile::half_t, ck_tile::pk_int4_t, ck_tile::half_t>
using CDataType = ck_tile::half_t;
};
template <>
struct GemmTypeConfig<ck_tile::fp8_t, ck_tile::pk_int4_t, ck_tile::half_t>
{
using ADataType = ck_tile::fp8_t;
using BDataType = ck_tile::pk_int4_t;
using AccDataType = float;
using CDataType = ck_tile::half_t;
};
template <>
struct GemmTypeConfig<ck_tile::int8_t, ck_tile::int8_t, int32_t>
{

View File

@@ -6,4 +6,11 @@
#include "test_gemm_pipeline_smoke_run_test.inc"
#include "test_gemm_pipeline_universal_run_test.inc"
int main() { return run_gemm_combinations<ck_tile::bf16_t>(); }
int main()
{
bool is_success = true;
is_success = run_gemm_combinations<ck_tile::bf16_t>() && is_success;
is_success =
run_gemm_combinations<ck_tile::bf16_t, ck_tile::pk_int4_t, ck_tile::bf16_t>() && is_success;
return is_success ? EXIT_SUCCESS : EXIT_FAILURE;
}

View File

@@ -6,4 +6,12 @@
#include "test_gemm_pipeline_smoke_run_test.inc"
#include "test_gemm_pipeline_universal_run_test.inc"
int main() { return run_gemm_combinations<ck_tile::bf8_t, ck_tile::bf8_t, ck_tile::half_t>(); }
int main()
{
bool is_success = true;
is_success =
run_gemm_combinations<ck_tile::bf8_t, ck_tile::bf8_t, ck_tile::half_t>() && is_success;
is_success =
run_gemm_combinations<ck_tile::bf8_t, ck_tile::pk_int4_t, ck_tile::half_t>() && is_success;
return is_success ? EXIT_SUCCESS : EXIT_FAILURE;
}

View File

@@ -6,4 +6,11 @@
#include "test_gemm_pipeline_smoke_run_test.inc"
#include "test_gemm_pipeline_universal_run_test.inc"
int main() { return run_gemm_combinations<ck_tile::half_t>(); }
int main()
{
bool is_success = true;
is_success = run_gemm_combinations<ck_tile::half_t>() && is_success;
is_success =
run_gemm_combinations<ck_tile::half_t, ck_tile::pk_int4_t, ck_tile::half_t>() && is_success;
return is_success ? EXIT_SUCCESS : EXIT_FAILURE;
}

View File

@@ -6,4 +6,12 @@
#include "test_gemm_pipeline_smoke_run_test.inc"
#include "test_gemm_pipeline_universal_run_test.inc"
int main() { return run_gemm_combinations<ck_tile::fp8_t, ck_tile::fp8_t, ck_tile::half_t>(); }
int main()
{
bool is_success = true;
is_success =
run_gemm_combinations<ck_tile::fp8_t, ck_tile::fp8_t, ck_tile::half_t>() && is_success;
is_success =
run_gemm_combinations<ck_tile::fp8_t, ck_tile::pk_int4_t, ck_tile::half_t>() && is_success;
return is_success ? EXIT_SUCCESS : EXIT_FAILURE;
}

View File

@@ -1,16 +1,15 @@
// SPDX-License-Identifier: MIT
// Copyright (c) 2025, Advanced Micro Devices, Inc. All rights reserved.
#include <cstddef>
#include <hip/hip_runtime.h>
#include <cstring>
#include <iostream>
#include <string>
#include "ck_tile/host.hpp"
#include "test_gemm_pipeline_smoke_util.hpp"
#include "test_gemm_pipeline_smoke_run_test.inc"
#include "test_gemm_pipeline_universal_run_test.inc"
int main() { return run_gemm_combinations<ck_tile::int8_t, ck_tile::int8_t, ck_tile::int32_t>(); }
int main()
{
bool is_success = true;
is_success =
run_gemm_combinations<ck_tile::int8_t, ck_tile::int8_t, ck_tile::int32_t>() && is_success;
return is_success ? EXIT_SUCCESS : EXIT_FAILURE;
}

View File

@@ -1,16 +1,15 @@
// SPDX-License-Identifier: MIT
// Copyright (c) 2025, Advanced Micro Devices, Inc. All rights reserved.
#include <cstddef>
#include <hip/hip_runtime.h>
#include <cstring>
#include <iostream>
#include <string>
#include "ck_tile/host.hpp"
#include "test_gemm_pipeline_smoke_util.hpp"
#include "test_gemm_pipeline_smoke_run_test.inc"
#include "test_gemm_pipeline_universal_run_test.inc"
int main() { return run_gemm_combinations<ck_tile::half_t, ck_tile::pk_int4_t, ck_tile::half_t>(); }
int main()
{
bool is_success = true;
is_success =
run_gemm_combinations<ck_tile::half_t, ck_tile::pk_int4_t, ck_tile::half_t>() && is_success;
return is_success ? EXIT_SUCCESS : EXIT_FAILURE;
}

View File

@@ -357,5 +357,5 @@ int run_gemm_combinations()
}
}
}
return is_success ? EXIT_SUCCESS : EXIT_FAILURE;
return is_success;
}