char-fork/llama.cpp
git clone https://git.t4t.associates/char-fork/llama.cpp
81b0d882a
char/aliceai-t5-moe
1include ( CheckCSourceRuns ) 2 3if ( CMAKE_SYSTEM_PROCESSORMATCHES "^(riscv)" AND GGML_CPU_RISCV64_SPACEMIT) 4set ( SMT_MARCH_STR "-march=rv64gcv_zfh_zvfh_zba_zicbop" ) 5if ( CMAKE_C_COMPILER_IDSTREQUAL "GNU" AND 6 CMAKE_C_COMPILER_VERSIONVERSION_GREATER_EQUAL 15) 7string ( APPEND SMT_MARCH_STR "_xsmtvdotii" ) 8endif () 9set ( CMAKE_REQUIRED_FLAGS " ${ SMT_MARCH_STR } " ) 10 11check_c_source_compiles ( "int main() {__asm__ volatile(\"vmadot v2, v0, v1\");}" SPACEMIT_RISCV_COMPILER_SUPPORT_IME1 ) 12check_c_source_compiles ( "int main() {__asm__ volatile(\"vmadot v2, v0, v1, i4\");}" SPACEMIT_RISCV_COMPILER_SUPPORT_VMADOT_S4 ) 13check_c_source_compiles ( "int main() {__asm__ volatile(\"vmadot v2, v0, v1, i8\");}" SPACEMIT_RISCV_COMPILER_SUPPORT_VMADOT_S8 ) 14check_c_source_compiles ( "int main() {__asm__ volatile(\"vfwmadot v2, v0, v1, fp16\");}" SPACEMIT_RISCV_COMPILER_SUPPORT_VFWMADOT_FP16 ) 15check_c_source_compiles ( "int main() {__asm__ volatile(\"vmadot.hp v2, v0, v1, v0, 0, i4\");}" SPACEMIT_RISCV_COMPILER_SUPPORT_VFMADOT_S4 ) 16check_c_source_compiles ( "int main() {__asm__ volatile(\"vmadot.hp v2, v0, v1, v0, 0, i8\");}" SPACEMIT_RISCV_COMPILER_SUPPORT_VFMADOT_S8 ) 17check_c_source_compiles ( "int main() {__asm__ volatile(\"vmadot1 v2, v0, v1\");}" SPACEMIT_RISCV_COMPILER_SUPPORT_VMADOTN ) 18check_c_source_compiles ( "int main() {__asm__ volatile(\"vpack.vv v2, v0, v1, 2\");}" SPACEMIT_RISCV_COMPILER_SUPPORT_VPACK ) 19check_c_source_compiles ( "int main() {__asm__ volatile(\"vnspack.vv v2, v0, v1, 2\");}" SPACEMIT_RISCV_COMPILER_SUPPORT_VNPACK ) 20unset ( CMAKE_REQUIRED_FLAGS ) 21 22list ( APPEND RISCV64_SPACEMIT_IME_SPEC "" ) 23if ( SPACEMIT_RISCV_COMPILER_SUPPORT_IME1) 24set ( RISCV64_SPACEMIT_IME_SPEC "RISCV64_SPACEMIT_IME1" ) 25endif () 26 27if ( SPACEMIT_RISCV_COMPILER_SUPPORT_VMADOT_S4AND SPACEMIT_RISCV_COMPILER_SUPPORT_VPACKAND SPACEMIT_RISCV_COMPILER_SUPPORT_VNPACK) 28list ( APPEND RISCV64_SPACEMIT_IME_SPEC "RISCV64_SPACEMIT_IME2" ) 29endif () 30 31message ( "RISCV64_SPACEMIT_IME_SPEC: ${ RISCV64_SPACEMIT_IME_SPEC } " ) 32endif ()