ggml-cpu: add s390x detection in ggml-src

Signed-off-by: Aaron Teo <aaron.teo1@ibm.com>
This commit is contained in:
Aaron Teo
2025-06-21 20:38:55 +08:00
parent c8b3b89548
commit ebb8489a0c

View File

@ -290,6 +290,10 @@ function(ggml_add_cpu_backend_variant tag_name)
foreach (feat ${ARGN})
set(GGML_INTERNAL_${feat} ON)
endforeach()
elseif (GGML_SYSTEM_ARCH STREQUAL "s390x")
foreach (feat ${ARGN})
set(GGML_${feat} ON)
endforeach()
endif()
ggml_add_cpu_backend_variant_impl(${tag_name})
@ -354,6 +358,14 @@ if (GGML_CPU_ALL_VARIANTS)
else()
message(FATAL_ERROR "Unsupported PowerPC target OS: ${CMAKE_SYSTEM_NAME}")
endif()
elseif (GGML_SYSTEM_ARCH STREQUAL "s390x")
if (CMAKE_SYSTEM_NAME MATCHES "Linux")
ggml_add_cpu_backend_variant(s390x_z15 VX VXE VXE2)
ggml_add_cpu_backend_variant(s390x_z16 VX VXE VXE2 NNPA)
ggml_add_cpu_backend_variant(s390x_z17 VX VXE VXE2 NNPA)
else()
message(FATAL_ERROR "Unsupported s390x target OS: ${CMAKE_SYSTEM_NAME}")
endif()
else()
message(FATAL_ERROR "GGML_CPU_ALL_VARIANTS not yet supported with ${GGML_SYSTEM_ARCH} on ${CMAKE_SYSTEM_NAME}")
endif()
@ -404,15 +416,11 @@ if (BUILD_SHARED_LIBS)
endif()
if (GGML_VXE)
add_compile_definitions(GGML_VXE)
target_compile_definitions(ggml PRIVATE GGML_VXE)
target_compile_definitions(ggml-base PRIVATE GGML_VXE)
message(STATUS "GGML_VXE triggered")
target_compile_definitions(ggml PRIVATE GGML_VXE)
endif()
if (GGML_NNPA)
add_compile_definitions(GGML_NNPA)
target_compile_definitions(ggml PRIVATE GGML_NNPA)
target_compile_definitions(ggml-base PRIVATE GGML_NNPA)
message(STATUS "GGML_NNPA triggered")
target_compile_definitions(ggml PRIVATE GGML_NNPA)
endif()