I am trying to compile llama.cpp without any SIMD instructions. I’m building llama.cpp from their flake.nix devshell which gets rid of most platform specific instruction sets (like AVX and others). However, SSE and SSE2 remain even when building in the devshell and using the -mno-sse and -mno-sse2 flags. I’m pretty sure it’s because the dependencies (glibc and others) still contain both SSE and SSE2.
I ran:
nix develop
cmake -B build -DCMAKE_BUILD_TYPE=Debug
cmake --build build
Is there a way to add these flags to stdenv so that everything is compiled without them? Or is there another way to do this?
Thank you so much for your help!
PS: I use elfx86exts to check the instruction sets used.
PPS: I’m on an Ubuntu 18.04, with an Intel CPU