════════════════════════════════════════════════════════════════════
  ARIAPOOL — TensorCash (TSC) community worker  v2.4
  Proof-of-inference mining: your GPU runs the real Qwen3-8B model.
════════════════════════════════════════════════════════════════════

WHATS NEW IN v2.4 (2026-07-16)
  - [PHASE] log lines in the vLLM backend: model load/warmup progress
    (10-30 min with NO shares = normal, now visible), READY marker, and a
    loud line if the vLLM engine dies silently. Logs only, behavior unchanged.

WHATS NEW IN v2.3 (2026-07-15)
- C++ proof processor by default (POW_PROCESSOR_MODE=cpp), faster proof
  handling, as recommended by the TensorCash dev. Falls back to the python
  processor automatically if the C++ path is unavailable, so mining never
  stops. Applies to the vLLM engines (single 24 GB and dual 16 GB).
- Confirmed GPU support: the vLLM image ships native kernels for
  sm_70/75/80/86/90/120, so it runs without recompiling on Turing, Ampere
  (RTX 3090 / A6000), Ada, Hopper and Blackwell. A single RTX 3090 (24 GB)
  runs the vLLM bf16 single-GPU path. Needs a recent NVIDIA driver (CUDA 12.8).
- Everything from v2.2 (dual-GPU mining for 2x 16 GB in the same machine).

WHATS NEW IN v2.2 (2026-07-15)
- DUAL-GPU MINING for 2x 16 GB cards: run.sh now detects exactly two
  16 GB cards and runs ONE vLLM bf16 engine tensor-parallel across both,
  instead of two separate llama workers. The bf16 model does not fit on
  one 16 GB card but fits split across two, so both cards feed a single
  high-throughput vLLM engine.
  IMPORTANT: both cards must be in the SAME physical machine (same
  motherboard/PCIe). Dual mining does NOT work across two PCs on a LAN —
  tensor-parallel needs GB/s bandwidth and microsecond latency between the
  cards, which only the local PCIe bus provides. Two cards in two separate
  machines: just run ./run.sh on each machine (one worker per machine).
- Auto-detect layout:
      1x 24 GB+ card         -> vLLM bf16 (single)
      exactly 2x 16 GB cards -> vLLM bf16 DUAL (tensor-parallel)   [NEW]
      1x 16 GB card          -> llama.cpp bf16
      any other layout       -> one worker per GPU (safe fallback)
- All modes run the SAME canonical Qwen3-8B and produce network-accepted
  proofs. (The FP8 path explored earlier is dropped: the network verifier
  does not accept FP8 model proofs.)
- MINER FEE 5% unchanged (announced): one 5-min round every 100 min
  mines to the package maintainer wallet. Pool fee 5% applies separately.

WHAT YOU NEED
  • Linux x86-64
  • NVIDIA GPU(s), 16 GB VRAM or more.
      Dual mode needs EXACTLY two 16 GB cards in the same machine.
  • Docker + the NVIDIA Container Toolkit. Install on Ubuntu/Debian:
        curl -fsSL https://get.docker.com | sh
        curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey \
          | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
        curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list \
          | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' \
          | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
        sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit
        sudo nvidia-ctk runtime configure --runtime=docker && sudo systemctl restart docker
  • A TSC payout address (tc1q…). Shares are credited to it directly.

QUICK START
  tar xzf aria-worker-tsc-v2.2.tar.gz
  cd aria-worker-tsc
  ./run.sh
  → downloads the engine image(s) once, asks for your TSC address,
    detects your GPUs and starts the right worker(s).
  First start: model download (~16 GB) plus warm-up takes a few minutes
  before the first shares. Then it mines by itself and restarts with Docker.

MONITORING
  Dual mode :  cd wtp2 && docker compose -p aria-tsc-wtp2 logs -f
  Per-GPU   :  cd w0   && docker compose -p aria-tsc-w0   logs -f
  Your stats:  https://pool.ariabrain.com/tsc.html  (paste your address)
  Stop dual :  cd wtp2 && docker compose -p aria-tsc-wtp2 --profile '*' down

NOTE ON THROUGHPUT
  The vLLM engine (single 24 GB or dual 16 GB) processes many more
  inference streams than the llama engine, so it submits many more shares
  for the same hardware. In a PPLNS pool your reward is proportional to
  your share of the total, so this reflects genuinely higher useful
  throughput, not a fixed multiplier on payouts.

UPGRADING FROM v1.x / v2.1
  Stop the old worker first (docker compose down in its folder), install
  v2.2 in a fresh directory, run ./run.sh. Two-16 GB-card rigs switch from
  two llama workers to one dual vLLM engine automatically.

FAQ
  Q: I have two 16 GB cards but it started llama / per-GPU, not dual.
  A: Dual needs EXACTLY two 16 GB cards and nothing else. A third GPU or a
     24 GB card falls back to per-GPU. Ask on Discord if you want a custom
     layout.
  Q: I have one 16 GB card in each of two PCs on my LAN — can they do dual?
  A: No. Dual needs both cards in the SAME machine. Run ./run.sh on each
     PC separately; each card mines on its own.
  Q: Force the old llama engine?
  A: Not exposed by default in dual mode — ask on Discord.
