⛏ QUANTUS POOL — NATIVE MINER SETUP

Quick Start

The native miner is a patched build of the official quantus-miner with pool-mode support (--payout-address + --worker-name). Three things to do: download the binary, get a payout address, run the miner.

1. Download

Windows x86_64 · Linux x86_64 · macOS arm64 · SHA256SUMS

After download, make the binary executable (Linux/macOS):

chmod +x quantus-miner-*
macOS Gatekeeper: the binary is unsigned, so first launch will be blocked. Clear the quarantine attribute once:
xattr -d com.apple.quarantine quantus-miner-darwin-arm64
macOS Intel (x86_64) build is coming later. Apple Silicon (M1/M2/M3/M4) only for now.

2. Get a payout address

You need a Quantus address (starts with qz…). Options:

Your rewards will be credited to whatever address you put on the --payout-address flag. The address is sent over the wire on every connection, so you can use different addresses on different rigs.

3. Run the miner

Minimum config (CPU only, auto-detected workers):

quantus-miner serve \
  --node-addr 38.190.136.73:9890 \
  --payout-address qzYOUR_ADDRESS_HERE \
  --worker-name my-rig

What to expect in the log:

⛏ Sent pool-hello (payout=qz…, worker=my-rig)
⛏ Bidirectional stream established
⛏ Received job: id=…, hash=0x…
🎉 GPU worker 0 found solution! …
⛏ Job … completed: N hashes in X.XXs (Y MH/s)

Confirm on the dashboard: your worker appears on the Connected Miners table within ~5s with a non-zero hashrate. Click your address to see the per-worker miner detail page.

GPU Selection

Multi-GPU systems are common (e.g., a laptop with an iGPU + dGPU, a workstation with multiple cards). The miner uses wgpu, which enumerates every GPU it can see across every supported backend (Vulkan, DirectX 12, Metal), so your "RTX 5090" may appear three or four times in the list. Picking the right one matters.

Step 1: List the GPUs

quantus-miner gpu-list

Output looks like this on Windows (RTX 5090 + iGPU + Microsoft fallback):

idx | name                                     | backend  |     vendor |     device | type
  0 | AMD Radeon(TM) 890M Graphics             | Vulkan   | 0x00001002 | 0x0000150e | IntegratedGpu
  1 | NVIDIA GeForce RTX 5090                  | Vulkan   | 0x000010de | 0x00002b85 | DiscreteGpu
  2 | NVIDIA GeForce RTX 5090                  | Vulkan   | 0x000010de | 0x00002b85 | DiscreteGpu
  3 | NVIDIA GeForce RTX 5090 Laptop GPU       | Vulkan   | 0x000010de | 0x00002c58 | DiscreteGpu
  4 | NVIDIA GeForce RTX 5090 Laptop GPU       | Vulkan   | 0x000010de | 0x00002c58 | DiscreteGpu
  5 | AMD Radeon(TM) 890M Graphics             | Dx12     | 0x00001002 | 0x0000150e | IntegratedGpu
  6 | NVIDIA GeForce RTX 5090                  | Dx12     | 0x000010de | 0x00002b85 | DiscreteGpu
  7 | NVIDIA GeForce RTX 5090 Laptop GPU       | Dx12     | 0x000010de | 0x00002c58 | DiscreteGpu
  8 | Microsoft Basic Render Driver            | Dx12     | 0x00001414 | 0x0000008c | Cpu

Same physical GPU often appears two or three times under different backends. Vulkan tends to perform best on NVIDIA & AMD discrete cards on Windows and Linux; DirectX 12 is the fallback. macOS only has Metal (via Vulkan→Metal translation).

Step 2: Pick the index(es) you want

Two ways to tell the miner which GPU(s) to use:

FlagBehavior
--gpu-devices N Use the first N enumerated adapters. Simple but blind: usually picks the iGPU first. Avoid on multi-GPU systems.
--gpu-device-ids 1,3 Use exactly these enumeration indices (comma-separated). The way to actually choose which GPU(s) you want. Pair with the indices from gpu-list.

Step 3: Examples

Single discrete GPU (RTX 5090 on Vulkan, ignore the iGPU):

quantus-miner serve \
  --node-addr 38.190.136.73:9890 \
  --payout-address qz… \
  --worker-name rtx5090-rig \
  --cpu-workers 0 \
  --gpu-device-ids 1

Two GPUs in parallel (desktop 5090 + laptop 5090, both on Vulkan):

quantus-miner serve \
  --node-addr 38.190.136.73:9890 \
  --payout-address qz… \
  --worker-name dual-5090 \
  --cpu-workers 0 \
  --gpu-device-ids 1,3

CPU + GPU mixed (4 CPU threads + one dGPU):

quantus-miner serve \
  --node-addr 38.190.136.73:9890 \
  --payout-address qz… \
  --worker-name mixed-rig \
  --cpu-workers 4 \
  --gpu-device-ids 1
On Windows with a laptop iGPU + dGPU combo, also set the GPU preference at the OS level: Settings → System → Display → Graphics → Add the miner → High performance. This makes Windows wake up the dGPU faster and keeps the iGPU available for the display.

All CLI flags

FlagDefaultWhat it does
--node-addr127.0.0.1:9833QUIC endpoint to connect to. For pool: 38.190.136.73:9890. Must be IP:port, hostnames not supported.
--payout-addressRequired for pool mining. Your qz… address. Sent in the pool-hello frame.
--worker-namehostnameFriendly name shown on the dashboard. Useful when you have multiple rigs.
--cpu-workersautoCPU mining threads. Set 0 for GPU-only.
--gpu-devicesautoUse first N GPU adapters. Blunt — prefer --gpu-device-ids.
--gpu-device-idsComma-separated GPU indices from gpu-list. Overrides --gpu-devices.
--gpu-batch-size1000000Nonces per GPU dispatch. Larger = higher throughput, longer cancellation latency. Default is fine.
--cpu-batch-size10000Hashes per CPU cancellation check. Default is fine.
--metrics-port9900Prometheus metrics on http://0.0.0.0:N/metrics. Change if running multiple miners on one host.
-v / --verboseoffDebug-level logging. Useful for troubleshooting; loud otherwise.

Also: quantus-miner gpu-list (enumerate GPUs) and quantus-miner benchmark (10s engine speed test, no pool needed).

Running as a service

For a long-lived rig you'll want auto-restart on crash and on reboot. On Linux with systemd:

sudo tee /etc/systemd/system/quantus-miner.service <<'EOF'
[Unit]
Description=Quantus Native Miner (pool)
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=mining
WorkingDirectory=/home/mining
ExecStart=/home/mining/quantus-miner-linux-x86_64 serve \
    --node-addr 38.190.136.73:9890 \
    --payout-address qzYOUR_ADDRESS \
    --worker-name my-rig \
    --cpu-workers 0 \
    --gpu-device-ids 0
Restart=on-failure
RestartSec=10
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable --now quantus-miner
sudo journalctl -u quantus-miner -f

On Windows, easiest is NSSM to wrap the .exe as a service.

Troubleshooting

Connection refused / can't connect to 38.190.136.73:9890

"payout address rejected"

Hashrate drops, then climbs again

Browser GPU on Mac doesn't work, native does

Multiple miners on one host