#!/bin/bash
# Strata bench: build llama.cpp at the pinned commit (the vendored ggml of Strata 8fc40dde), CUDA for the RTX 5090 Laptop (sm_120).
set -euo pipefail
SRC=/data/strata-bench/src/llama.cpp-3cf03257
OUT=/data/strata-bench/build/llama.cpp-3cf03257
LOG=$HOME/bench-archive/plans-2026-10-02/strata-bench/receipts/build-llamacpp.log
exec >>"$LOG" 2>&1
echo "$(date -u +%FT%TZ) BUILD START commit=$(git -C $SRC rev-parse HEAD)"
export PATH=/usr/local/cuda-13.4/bin:$PATH
cmake -S $SRC -B $OUT -G Ninja -DCMAKE_BUILD_TYPE=Release -DGGML_CUDA=ON -DCMAKE_CUDA_ARCHITECTURES=120 \
  -DCMAKE_CUDA_COMPILER=/usr/local/cuda-13.4/bin/nvcc -DGGML_NATIVE=ON -DLLAMA_CURL=OFF -DLLAMA_BUILD_TESTS=OFF
cmake --build $OUT --target llama-server llama-bench llama-cli -j 16
echo "$(date -u +%FT%TZ) BUILD DONE"
for b in llama-server llama-bench llama-cli; do echo "BIN $b $(sha256sum $OUT/bin/$b | cut -c1-16)"; done
$OUT/bin/llama-server --version 2>&1 | head -3
