Mine $EQM with your GPU.
Single Rust binary. No CUDA, no Electron, no proprietary driver — cross-platform via wgpu. Any modern GPU works; CPU and browser fallbacks ship too.
Renting a GPU is the easiest path — start there if you don't already have one.
Rent a GPU and mine in 3 steps.
We haven't benchmarked specific cards yet — these are starting recommendations based on Equihash 96,5 being memory-bandwidth bound. Mid-range NVIDIAs are usually better $/hashrate than flagships.
- Start mid-range. RTX 30/40-series 6-12 GB cards (3060, 4060, 3070, 4070) often beat flagships on $/hashrate — flagship ALUs don't help a memory-bound workload. Report your numbers and we'll publish a real comparison.
- One GPU is plenty. The miner uses a single device.
- On-demand, not interruptible. Spot instances get killed mid-block.
- Verified host + Ubuntu 22.04 PyTorch/CUDA template. Saves driver-debugging time.
- Check the Driver Version column. 535 / 545 / 550 are confirmed working; avoid 555 / 565 / 570 / 575 — that open-driver branch crashes our compute pipelines with a SPIR-V compiler bug. Most current vast.ai hosts run 555+, so our template can't filter them out structurally — eyeball the column on each candidate. If you land on a bad one anyway, the miner's auto-probe tells you within ~5 seconds and you can stop the rental before it costs anything.
./equium-install.sh
The template's on-start script stages it at ~/equium-install.sh with an SSH MOTD reminder. The installer takes you from a bare box to an actively mining miner: tools, build, keypair, RPC prompt, balance wait, mine. Re-runnable — Ctrl-C + rerun resumes instantly.
Send ~0.01 SOL to the printed address for tx fees, paste a Helius RPC URL when prompted, done.
tmux session named eqm. Press Ctrl-B then D to detach — miner keeps running. Close your laptop, lose Wi-Fi, whatever; reattach later with ./equium-install.sh (rerun) or tmux attach -t eqm. Output is also tee'd to ~/.config/equium/mine.log.EQUIUM_BACKEND=cuda|vulkan|gl or force the hybrid path with EQUIUM_HYBRID=1. Stuck? Run ./equium-install.sh --doctor for a redacted report you can paste in a GitHub issue.macOS
Native macOS — Apple Silicon or Intel, both work. Open Terminal:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh source "$HOME/.cargo/env"
sh -c "$(curl -sSfL https://release.anza.xyz/stable/install)" export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH"
solana-keygen new -o ~/.config/solana/id.json --no-bip39-passphrase solana-keygen pubkey ~/.config/solana/id.json # send a bit of SOL here
git clone https://github.com/HannaPrints/equium.git cd equium cargo build --release -p equium-gpu-miner # Quick sanity check — auto-probes Metal and confirms the shader # matches the CPU reference byte-for-byte. ./target/release/equium-gpu-miner verify # --full-gpu runs all five Wagner rounds on the GPU. Drops the flag # if you want the hybrid path (CPU does Wagner, GPU does BLAKE2b). ./target/release/equium-gpu-miner mine --full-gpu \ --rpc-url https://mainnet.helius-rpc.com/?api-key=YOUR_KEY \ --keypair ~/.config/solana/id.json
Apple Silicon talks to the GPU over Metal; everything stays on-device, no driver install. Once it's mining, see Tune your GPU miner for benchmarks.
Linux
nvcc (on NVIDIA), builds the miner with the CUDA backend, generates a keypair, asks for an RPC URL, and starts mining with --full-gpu. Works on Ubuntu, Debian, Arch, Fedora — anything with apt, pacman, or dnf.curl -fsSL https://raw.githubusercontent.com/HannaPrints/equium/master/scripts/install.sh \ -o ~/equium-install.sh && chmod +x ~/equium-install.sh && ~/equium-install.shDetach-safe — launches the miner inside a
tmux session, so SSH drops and laptop closes don't kill it. Ctrl-B then D to detach. Prefer to build by hand? Manual steps below.# Debian / Ubuntu sudo apt update && sudo apt install -y build-essential pkg-config libssl-dev curl git # Arch sudo pacman -S --needed base-devel openssl curl git # Fedora sudo dnf install -y @development-tools openssl-devel curl git
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh source "$HOME/.cargo/env"
sh -c "$(curl -sSfL https://release.anza.xyz/stable/install)" export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH"
solana-keygen new -o ~/.config/solana/id.json --no-bip39-passphrase solana-keygen pubkey ~/.config/solana/id.json
# Vulkan loader (the wgpu fallback path; AMD/Intel use it, # NVIDIA on healthy drivers does too). # Debian / Ubuntu sudo apt install -y libvulkan1 vulkan-tools # Arch sudo pacman -S vulkan-icd-loader vulkan-tools # Fedora sudo dnf install -y vulkan-loader vulkan-tools # NVIDIA only — install nvcc so we can build the CUDA backend. # Skip this on AMD/Intel. sudo apt install -y nvidia-cuda-toolkit git clone https://github.com/HannaPrints/equium.git cd equium # NVIDIA → enable the CUDA backend (fastest path, also bypasses # the SPIR-V crash on driver 555-575). cargo build --release -p equium-gpu-miner --features cuda # AMD / Intel / no nvcc → drop --features cuda: # cargo build --release -p equium-gpu-miner # Sanity check. The miner self-probes CUDA → Vulkan → GL in # subprocesses so a buggy driver kills the probe, not your terminal. ./target/release/equium-gpu-miner verify # --full-gpu runs all five Wagner rounds on the GPU. On a 4090 with # CUDA this is ~20× the hybrid path. Drop the flag for hybrid mode. ./target/release/equium-gpu-miner mine --full-gpu \ --rpc-url https://mainnet.helius-rpc.com/?api-key=YOUR_KEY \ --keypair ~/.config/solana/id.json
Works on NVIDIA (CUDA or Vulkan), AMD, and Intel GPUs that support Vulkan 1.1+ (or GL 4.5 as fallback). If vulkaninfo lists your adapter or nvidia-smi shows a healthy GPU, the miner will pick it up. Once mining works, see Tune your GPU miner.
Windows
curl -fsSL https://raw.githubusercontent.com/HannaPrints/equium/master/scripts/install.sh \ -o ~/equium-install.sh && chmod +x ~/equium-install.sh && ~/equium-install.shInstalls everything (Rust, Solana CLI, Vulkan,
nvcc for NVIDIA), builds the miner, and starts mining with --full-gpu. Skip steps 2-5 below.Open PowerShell as Administrator and run:
wsl --install -d Ubuntu
Reboot when prompted, then open the new "Ubuntu" app from the Start menu and set a UNIX username + password. You're now inside Linux — everything below runs in the Ubuntu terminal, not PowerShell.
sudo apt update && sudo apt install -y build-essential pkg-config libssl-dev curl git
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh source "$HOME/.cargo/env"
sh -c "$(curl -sSfL https://release.anza.xyz/stable/install)" export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH"
solana-keygen new -o ~/.config/solana/id.json --no-bip39-passphrase solana-keygen pubkey ~/.config/solana/id.json # send SOL here # WSL2 exposes your Windows GPU via Vulkan (NVIDIA + AMD have full # support; Intel works on recent drivers). Install Vulkan + nvcc # (the latter only if you have an NVIDIA card): sudo apt install -y libvulkan1 vulkan-tools sudo apt install -y nvidia-cuda-toolkit # NVIDIA only git clone https://github.com/HannaPrints/equium.git cd equium # NVIDIA → enable the CUDA backend. AMD/Intel → drop --features cuda. cargo build --release -p equium-gpu-miner --features cuda # Sanity check. Auto-probes CUDA → Vulkan → GL in subprocesses so # a buggy driver kills the probe, not your shell. ./target/release/equium-gpu-miner verify # --full-gpu = all five Wagner rounds on the GPU. The fast path. ./target/release/equium-gpu-miner mine --full-gpu \ --rpc-url https://mainnet.helius-rpc.com/?api-key=YOUR_KEY \ --keypair ~/.config/solana/id.json
cargo build from PowerShell after installing rustup-init.exe, Build Tools for Visual Studio (C++ workload), and the Solana Windows installer. wgpu picks up DX12 automatically. File a GitHub issue if something specific breaks and we'll document a workaround.Tune & verify
./target/release/equium-gpu-miner verify-rounds --nonces 4
--full-gpu runs all five Wagner rounds on the GPU. verify-rounds reruns the pipeline alongside the CPU reference and asserts they find the same solutions on your specific driver. Reference point: ~320 H/s on a 4090 + CUDA, vs ~15 H/s on the hybrid path.
EQUIUM_BACKEND=cuda|vulkan|gl|metal|dx12— force a specific backend instead of auto-probing.EQUIUM_HYBRID=1— force the CPU-Wagner + GPU-BLAKE2b path (fallback if--full-gpumisbehaves).--threads N— workers used for header bookkeeping + hybrid Wagner. Defaults tonum_cpus.bench/bench-wagnersubcommands print raw BLAKE2b / Wagner throughput in case you want a number to compare cards.
No GPU? CPU still earns.
Equihash 96,5 is memory-bound, so commodity CPUs stay viable — auto-retargeting tracks total network hashrate, and your share scales with yours.
cd equium cargo build --release -p equium-cli-miner ./target/release/equium-miner \ --rpc-url https://mainnet.helius-rpc.com/?api-key=YOUR_KEY \ --keypair ~/.config/solana/id.json \ --threads $(nproc 2>/dev/null || sysctl -n hw.physicalcpu)
Stuck?
The full source is at github.com/HannaPrints/equium. Open an issue if you hit something specific or post in the X replies on @EquiumEQM.