diff --git a/Dockerfile.ci b/Dockerfile.ci index d73fd2a6..cd7d6d1b 100644 --- a/Dockerfile.ci +++ b/Dockerfile.ci @@ -38,10 +38,11 @@ RUN mkdir -p /tmp/exla_warm/config && \ printf 'import Config\nconfig :nx, :default_backend, EXLA.Backend\nconfig :exla, :make_args, ["-j1"]\n' > /tmp/exla_warm/config/config.exs # Compile all deps. EXLA's Makefile defaults to -O3 which OOM-kills g++ -# on low-memory CI runners. Patch it to -O0 before compilation. +# on low-memory CI runners. Set DEBUG=1 so the Makefile uses -g +# (debug symbols, low compile-time memory) instead of -O3 (heavy +# optimization passes). Also set EXLA_CPU_ONLY=1 to skip nvcc probing. RUN mix deps.get && \ - sed -i 's/-O3/-O0/g' deps/exla/Makefile && \ - mix deps.compile + DEBUG=1 EXLA_CPU_ONLY=1 mix deps.compile # Save the full build cache (libexla.so + .o files + xla_extension lib) # so Make finds all targets already built when restored in the test step.