mirror of
https://github.com/elder-plinius/OBLITERATUS.git
synced 2026-08-30 06:30:37 +02:00
feat: harden local runtime and verification
This commit is contained in:
Executable
+38
@@ -0,0 +1,38 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
set +x
|
||||
|
||||
cd "$(dirname "${BASH_SOURCE[0]}")/../.."
|
||||
|
||||
uv sync --locked --extra spaces --extra dev --no-editable
|
||||
|
||||
enable_cuda="${ENABLE_CUDA:-auto}"
|
||||
if [[ "$enable_cuda" != "false" ]] && command -v nvidia-smi >/dev/null 2>&1; then
|
||||
torch_version="$(.venv/bin/python -c 'import torch; print(torch.__version__.split("+", 1)[0])')"
|
||||
UV_TORCH_BACKEND=cu130 uv pip install \
|
||||
--python .venv/bin/python \
|
||||
--reinstall-package torch \
|
||||
"torch==$torch_version"
|
||||
fi
|
||||
|
||||
uv pip check --python .venv/bin/python
|
||||
.venv/bin/python - <<'PY'
|
||||
import shutil
|
||||
import torch
|
||||
|
||||
if torch.cuda.is_available():
|
||||
probe = torch.arange(16, device="cuda", dtype=torch.float32).square().sum()
|
||||
assert probe.device.type == "cuda"
|
||||
torch.backends.cudnn.enabled = False
|
||||
torch.backends.cuda.enable_cudnn_sdp(False)
|
||||
conv_input = torch.randn(1, 8, 32, device="cuda", dtype=torch.float16)
|
||||
conv_weight = torch.randn(8, 8, 3, device="cuda", dtype=torch.float16)
|
||||
convolution = torch.nn.functional.conv1d(conv_input, conv_weight)
|
||||
q = torch.randn(1, 2, 32, 16, device="cuda", dtype=torch.float16)
|
||||
attention = torch.nn.functional.scaled_dot_product_attention(q, q, q, is_causal=True)
|
||||
torch.cuda.synchronize()
|
||||
assert convolution.device.type == "cuda" and torch.isfinite(convolution).all()
|
||||
assert attention.device.type == "cuda" and torch.isfinite(attention).all()
|
||||
elif shutil.which("nvidia-smi"):
|
||||
raise SystemExit("NVIDIA hardware detected but the installed PyTorch runtime cannot use CUDA")
|
||||
PY
|
||||
Reference in New Issue
Block a user