QelvminerQelvminer
QelvminerQelvminer

Windows · Linux · HiveOS

Qelvminer: the Quantus GPU miner for NVIDIA rigs.

Poseidon2 kernels tuned for RTX 30, 40 and 50 series, one build per platform, each published with its SHA-256, and a dev fee you can watch on the dashboard. It mines on Qelvpool over the chain's native protocol, and falls back by itself to stratum over TLS where the network blocks UDP; the pool also accepts the stock quantus-miner and every stratum miner.

Version
1.1.4
Dev fee
1%
Targets
NVIDIA GPUs
Protocol
quantus-miner/2

Downloads

One build per platform. Check the sum before you run it: the pool publishes the same value in /api/terms, so the two can be compared. A rig on an older build is told once in its console when a newer one is published.

Linux

x86_64 · 1.1.4
qelvminer-1.1.4-linux-x86_64

Download
SHA-256aad134e4d082…f971c0d234

Windows

x86_64 · 1.1.4
qelvminer-1.1.4-windows-x86_64.exe

Download
SHA-2560053d87661fb…5b97b44858

HiveOS

flight sheet · 1.1.4
qelvminer-hive-1.1.4.tar.gz

Download
SHA-25661c04d0bdcdf…dd7973acc7

The HiveOS package starts the CUDA engine, so it is for NVIDIA rigs. It has been built and checked, but we have not yet run it on a HiveOS rig of our own.

Verify the build. On Linux, sha256sum qelvminer-1.1.4-linux-x86_64 must print the sum shown above (the binary needs glibc 2.30 or newer). On Windows, in PowerShell, Get-FileHash .\qelvminer-1.1.4-windows-x86_64.exe. For HiveOS, sha256sum qelvminer-hive-1.1.4.tar.gz. Every sum of the release is also in qelvminer-1.1.4-SHA256SUMS, under the same file names. A sum that does not match is not a Qelvhash build.

Benchmarks

What Qelvminer does per card in real mining on Qelvpool, read live from the pool. Each row carries the conditions it was measured under, because a hashrate without its conditions is not a measurement. These are our numbers; we do not publish anyone else's.

Qelvminer hashrate per GPU
GPUQelvminer
NVIDIA GeForce RTX 5090Real mining on Qelvpool over QUIC, GPU only, Linux (rented Ubuntu 24.04 host); 470 W power limit set by the host (the card's default is 575 W)1.51GH/s
NVIDIA GeForce RTX 5070Real mining on Qelvpool over QUIC, GPU only, Linux (rented Ubuntu 24.04 host); 175 W default power limit, about 130 W drawn472.40MH/s
NVIDIA GeForce RTX 4090Real mining on Qelvpool over QUIC, GPU only, Windows; 450 W default power limit (1101 MH/s at 350 W)1.20GH/s
NVIDIA GeForce RTX 4070Real mining on Qelvpool over QUIC, GPU only, Windows; 200 W default power limit (two rigs, one card each: 436 and 443 MH/s)436.00MH/s
NVIDIA GeForce RTX 3070Real mining on Qelvpool over QUIC, GPU only, Windows; 190 W power limit (315 MH/s at the 240 W default)301.40MH/s
NVIDIA GeForce RTX 3060Real mining on Qelvpool over QUIC, GPU only, Windows; 170 W default power limit194.60MH/s

One card per run, GPU only, no overclock; the power limit is in each row. Measured on Windows, the RTX 5070 and 5090 on Linux. RTX 30, 40 and 50 series run our own kernels; other NVIDIA cards take the generic CUDA path (NVRTC), which is slower. AMD, Intel and Apple GPUs are not supported.

Run it

Three flags are required and the rest have working defaults: on an NVIDIA card the CUDA engine is picked automatically and the CPU stays off. The endpoint and the certificate pin below are the live ones from /api/chains; the dashboard generates the same command with your address filled in.

Generate my command

./qelvminer-1.1.4-linux-x86_64 serve \
  --node-addr quantus.qelvhash.com:9834 \
  --auth-token qzYourQuantusPayoutAddress.rig1 \
  --tls-cert-sha256 d770aeda353aeab5d777f0cda626aa3ecbb4201c5a2801e6661ca232d86e6245 \
  --cuda-gpu \
  --cpu-workers 0

Run it from the folder you downloaded qelvminer-1.1.4-linux-x86_64 to; on Windows the file is qelvminer-1.1.4-windows-x86_64.exe, run in PowerShell with a backtick at the end of each line instead of the backslash. For solo mining use the same command with --node-addr quantus.qelvhash.com:9844. Once a share lands, the rig appears on the dashboard under your address within a minute.

Flags

Every flag has a MINER_* environment variable with the same name, for systemd units and containers, and the miner also reads a .env file from its working directory.

Qelvminer command-line flags
FlagEnvironmentWhat it doesDefault
--node-addrMINER_NODE_ADDRPool endpoint, host:port. UDP for QUIC. The PPLNS port shares every block; the solo port pays a block to the rig that found it.required
--auth-tokenMINER_AUTH_TOKENYour payout address, optionally followed by a dot and a worker name.required
--tls-cert-sha256MINER_TLS_CERT_SHA25664 hex characters. The certificate is self-signed, so the fingerprint is the only thing verified. A wrong pin is a permanent error, not a retry.required
--cpu-workersMINER_CPU_WORKERSCPU threads that hash. 0 turns CPU mining off. Since 1.0.1 the CPU stays off while a GPU mines (it added about 1 % and heat); without a GPU it uses every core but one.0 with a GPU · cores − 1 without
--cuda-gpuMINER_CUDA_GPUThe CUDA engine (NVIDIA only): auto picks it whenever the driver reports a device and falls back to the much slower Vulkan/DX12 engine otherwise; --cuda-gpu forces it (an error without CUDA), --cuda-gpu=false forces Vulkan/DX12. On RTX 30, 40 and 50 series it runs our own kernels; other NVIDIA cards need NVRTC from the CUDA toolkit 12 (nvrtc64_120_0.dll / libnvrtc.so.12).auto
--gpu-devicesMINER_GPU_DEVICESComma-separated device indices from gpu-list. Empty means every device; none turns the GPU off.all
--gpu-throttle-msMINER_GPU_THROTTLE_MSIdle milliseconds inserted between batches, to keep a desktop responsive or a card cool.0
--gpu-clock-offsetMINER_GPU_CLOCK_OFFSETCore clock offset in MHz for NVIDIA cards: one value for all, or a comma list in device order (150 or 150,,120). It moves the card's voltage/frequency curve, so the same power limit gives more MHz and more hashrate. Too high and the card miscomputes or the driver resets: raise it 25–50 MHz at a time.not set
--gpu-mem-offsetMINER_GPU_MEM_OFFSETMemory clock offset in MHz, same format. Quantus does not use the card's memory; a negative value only saves a little power.not set
--gpu-clockMINER_GPU_CLOCKHold the core clock at this frequency in MHz, same format, instead of letting the driver move it.not set
--gpu-power-limitMINER_GPU_POWER_LIMITBoard power limit in watts, same format, within the range the card accepts.not set
--gpu-fanMINER_GPU_FANFan speed in percent, 20–100, same format.not set
--status-interval-secsMINER_STATUS_INTERVAL_SECSSeconds between status lines on the console: hashrate, GPU temperature, clock and power, shares, share effort and luck, round trip to the pool, measured dev fee.10
--log-fileMINER_LOG_FILEAppend every share, job and difficulty change to a file, with full timestamps, whatever the console shows.off

The same thing as environment

MINER_NODE_ADDR=quantus.qelvhash.com:9834
MINER_AUTH_TOKEN=qzYourQuantusPayoutAddress.rig1
MINER_TLS_CERT_SHA256=d770aeda353aeab5d777f0cda626aa3ecbb4201c5a2801e6661ca232d86e6245
MINER_CUDA_GPU=true
MINER_CPU_WORKERS=0

Benchmark first, if you like

benchmark --seconds 30 runs the same engine offline and prints the hashrate; gpu-list prints the device indices --gpu-devices takes.

GPU tuning (1.1.1 and later). The five --gpu-… tuning flags are applied before the first job and checked against the range the driver reports; a value it would refuse is a warning, and the rest still applies. Stopping the miner with Ctrl+C puts everything back as it was; closing the window does not, and the values then stay until a reboot. On Windows open the console as administrator. Nothing is touched unless you pass one of them.
Certificate pinning, not a CA. The pool's certificate is self-signed, so the miner verifies exactly one thing: the SHA-256 of the leaf certificate against --tls-cert-sha256. No chain, no hostname. A mismatch is a permanent error and the miner stops instead of retrying, which is what you want if something sits between you and the pool. Rotations overlap, so a running rig never loses its work.

When it does not work

“timed out” and “reconnecting” in a loop
The pool speaks QUIC over UDP, and some networks block it. Test from the rig with nc -zvu quantus.qelvhash.com 9834; if nothing comes back, open outbound UDP to that port on the firewall or router. Since 1.1.4 Qelvminer handles this on its own: after three failed QUIC attempts it moves to the pool's stratum port over TLS (4443) with the same certificate pin, and --transport stratum forces it from the start.
The GPU is not used, or the hashrate is far below the benchmarks
The startup banner names the engine it chose. CUDA is the fast one; if it says wgpu on an NVIDIA card the driver is missing or too old. Run gpu-list to see what the miner detects and pass --gpu-devices <index> explicitly. On Linux nvidia-smi must answer.
“certificate” or “fingerprint” errors
The miner pins the pool's certificate. Copy the exact --tls-cert-sha256 value from the command above or from the dashboard; a fingerprint from another pool or an old copy is refused, on purpose.
“qelvminer only mines on Qelvpool”
Current releases connect to Qelvpool endpoints only (quantus.qelvhash.com). For another pool, use another miner.
Hashrate drops right after a start, then climbs back
The pool's variable difficulty settling on your rig, not a fault. The “Your difficulty” chart on your dashboard page shows it moving; give it a few minutes.

The dev fee

What Qelvminer keeps is in the strip at the top of this page, read from the pool rather than typed into this paragraph, and stated before you download anything. The miner opens a second session from each rig to the same endpoint, with the worker name plus -fee, and sends it one batch in every hundred: the fee shows on the pool dashboard like any other rig, the console prints the measured share, and if that session is down the rig keeps all of its hashrate.

Qelvminer mines on Qelvpool. Current releases connect only to Qelvpool endpoints; the pool itself accepts every standard Quantus miner over both protocols. Run whichever build works best on your card: the pool credits the shares the same way, whoever wrote the miner that sent them.