Proof-of-Useful-Work · GPU mining
Pearl Mining Calculator
Estimate PRL mining rewards with the exact block-subsidy
formula from the Pearl node source (CalcBlockSubsidy in
node/blockchain/validate.go) — no guesses, no made-up numbers.
Enter your share of network useful work, or pull live figures from your own
pearld node.
Reward calculator
Rewards scale with your share of network useful work.
On Pearl, mining is GPU matrix-multiplication work via vLLM — the
networkhashps figure from getmininginfo is the
network's estimated useful-work rate.
Estimates only: difficulty retargets (WTEMA), the subsidy decays every block, and transaction fees are not included. Not financial advice.
Emission schedule
Subsidy(h) = 2.1B × 650226 ÷ ((h + 650226)(h − 1 + 650226)) —
verified against CalcBlockSubsidy and the upstream emission tests
(h=1 → 3229.64 PRL, h=650226 → 807.41 PRL).
Subsidy milestones
| Height | Approx. date | Subsidy (PRL) | Note |
|---|
Dates assume a constant 194 s block time from genesis — indicative only. Milestone subsidies are computed live on this page with the exact formula.
Live node data
Point the calculator at your own pearld
JSON-RPC endpoint. It reads getblockcount (fills block height)
and getmininginfo (fills network hashrate + difficulty).
Credentials stay in your browser's localStorage — nothing else leaves this page.
RPC is disabled on pearld unless
rpcuser/rpcpass are set. Browsers block plain-HTTP
calls to a node from an HTTPS page — run this page locally
(python3 -m http.server) or front the node with the upstream
node/proxy Caddy sidecar for TLS.
How Pearl mining works
⚙ Useful work, not busywork
Pearl replaces hash grinding with Proof-of-Useful-Work: miners run real matrix multiplications as a by-product of LLM inference (vLLM + NoisyGEMM CUDA kernels). The work is useful and secures the chain. Paper: arxiv.org/abs/2504.09971.
💻 Hardware
The reference miner is a vLLM plugin. It needs an NVIDIA GPU
(currently sm90 — H100 / H200), CUDA toolkit, Python 3.12 and
uv. Source: miner/ in
pearl-research-labs/pearl.
🔒 ZK-PoW certificates
Blocks carry ZK-PoW certificates (Plonky2/STARKy) that
prove the useful work was done. Since the salted-seed hard fork
(mainnet height 99000), getblocktemplate
reports requiredcertversion: 3 — miners must submit V3
salted noise-seed certificates.
⏱ Payout rhythm
One block every ~3m14s → ~445 blocks/day. Coinbase outputs mature after 100 blocks (~22.5 hours) before they can be spent. Difficulty retargets with a WTEMA filter, so network growth smoothly raises difficulty.
Quickstart (from the upstream miner README)
git clone https://github.com/pearl-research-labs/pearl && cd pearl uv sync --package vllm-miner # builds pearl-gemm CUDA kernels # point the miner at your pearld via pearl-gateway, then run the vLLM plugin
Full build + test instructions live in the upstream
miner/README.md. Docker one-click images exist from the
community (see the ecosystem survey) — verify any third-party image before
trusting it with your keys.
Support this work
Built by @kshot9000 for the Pearl community.
prl1p62v09vuzyd8kdz9l23jaf3kph4wwx6jqcmhkkhg8lhr2qlxky8psu3zw9d