Experimental lane
The highest-value thing an idle Mac can do isn't mining
Updated 13 September 2026 · measured on an M4 Max, 36 GB · independent field notes
If you own an Apple Silicon Mac and you have looked into mining, you have probably worked out the disappointing part already: a Mac is a mediocre miner. It cannot touch the GPU coins at all — Pearl, Ravencoin and Ergo need NVIDIA hardware and a Windows or Linux build. What is left is CPU mining, where even an M4 Max grosses about $8.50 a month.
But that is a verdict on mining, not on the machine. The same chip that is unremarkable at RandomX is genuinely excellent at something else: running large language models. Unified memory and Apple's MLX stack make an M-series Mac one of the better pieces of inference hardware a normal person owns — and Darkbloom is a network that pays for exactly that. Your Mac serves private AI inference requests; the work is real and so is the payment.
The work is real: what one Mac actually served
Numbers from our own M4 Max, read off the daemon rather than estimated:
| Measure | One M4 Max, single day |
|---|---|
| Requests served | 501 |
| Tokens generated | 351,702 |
| Model | Qwen3.5-9B, resident |
| Decode throughput (benchmark, Aug 2026) | ~270 tokens/sec on gpt-oss-20b |
Read from the provider's own state file on 13 September 2026. Throughput figure from our August benchmark run on the same machine.
That is a meaningful amount of work for a machine that would otherwise be idle, and it is the number we can actually verify. What we deliberately do not publish is what it paid. The Darkbloom provider exposes no earnings, balance or payout command at all — earnings live in their console and only you can see yours. We would rather say that plainly than put a dollar figure on this page that we cannot stand behind. Check their console before you assume it beats $8.50 a month, and decide from your own number rather than ours.
The catch, and it is a real one
Here is where the sixteen days went. The requirement that decides whether your Mac earns anything is not how much RAM it has. It is how much memory is free right now — and a Mac you actually use often does not have enough.
Our provider sat for sixteen consecutive days reporting full hardware trust, status online, eligible for traffic, and served exactly zero requests. Nothing in the ordinary status output said why. Read from the outside it was indistinguishable from a quiet stretch with no demand.
It was not quiet. It was being offered work and declining every job:
| What status showed | What was actually happening |
|---|---|
| Trust: hardware / online | Correct — trust is a separate axis and was never the problem |
| Requests served: 0 | Every offer refused, not never offered |
| (nothing) | Insufficient memory (13.5 GB free, need 18.0 GB) |
That refusal is, to be fair, correct behaviour. A provider that accepted a job it could not honour would fail the request and degrade the network. Refusing is the right call. It is just invisible — and invisible plus zero looks exactly like no demand.
What the memory requirement really is
The download size is not the number that matters. The daemon wants the weights plus working headroom for the KV cache, and it checks free memory at the moment a job arrives. Measured on our 36 GB machine:
| Model | On disk | Free memory it asked for | Outcome on a working Mac |
|---|---|---|---|
| gpt-oss-20b | ~13.5 GB | ~20 GB free | Declined — 14.2 GB free at the time |
| Qwen3.5-9B | ~6.8 GB | materially less | Served — the 501 requests above |
A 36 GB Mac running a browser, a couple of apps and anything else routinely sits below 20 GB free. That is not an unhealthy machine. That is a normal one.
Two levers that actually worked
1. Advertise a smaller model. The practical one, and the first to reach for. Our node began serving the moment it had a model it could fit — a 9 B at 6.8 GB went to work on a machine still refusing the 20 B. A smaller model that serves beats a larger one that declines, every time. Every request in the table above came from the small model.
2. Reboot, if the machine has been up a long time. Less obvious, and we did not expect it to matter. Before the reboot the Mac had sixteen days of uptime and roughly 7 GB of compressed memory; a fresh boot brought that under 1 GB. Long uptime on a working machine quietly eats the headroom the daemon measures. If your provider has been silent for weeks and you have not restarted in as long, try it before concluding there is no demand.
It can serve and decline at the same time
Worth knowing before you read your own numbers. A provider running more than one model slot can be happily serving one model while refusing another. We caught ours mid-act — hundreds of requests served on the 9 B while a second slot turned down gpt-oss-20b with Insufficient memory (14.2 GB free, need 20.0 GB) and all loaded models are actively serving.
So a load error on its own does not mean your node is idle. Check whether anything is warm before concluding anything is wrong.
How to check your own node
The daemon writes its state to ~/.darkbloom/daemon-state.json, refreshed every few seconds. Two fields answer the question:
| Field | What it tells you |
|---|---|
warm_models | Empty means nothing is loaded and nothing is being earned. Non-empty means it is working. |
slots[].load_error | The actual refusal, in the daemon's own words, including the memory figures. |
Read them together, in that order. requests_served alone will not tell a declining node from a quiet one.
Where Pasiv fits
Pasiv is a one-button miner for macOS, Windows and Linux, and on Apple Silicon it has an opt-in Idle Compute (beta) lane that orchestrates a Darkbloom provider you installed. We do not ship, bundle or install Darkbloom — it is proprietary, and that would not be ours to do. Pasiv starts and stops the provider you already have, tells you the download size and free-memory requirement before anything happens, and surfaces exactly the failure described above: instead of an unexplained zero, the row says what is being declined and what it needs.
Pasiv cannot show your Darkbloom earnings and does not pretend to. It shows work done, which is the most honest thing it can read.
Frequently asked questions
Is serving AI inference better than mining on a Mac?
On work done, it is not close: a Mac cannot mine the GPU coins at all, and CPU mining grosses around $8.50 a month even on an M4 Max, while the same machine served 501 inference requests and 351,702 tokens in a day. On earnings we cannot make the comparison for you — the Darkbloom provider exposes no earnings figure to read, so what that work paid is visible only in their console. Check it there before deciding.
How much memory does a Darkbloom provider need?
More free memory than the model is large. On our 36 GB M4 Max, gpt-oss-20b asked for roughly 20 GB free despite being about 13.5 GB on disk — the daemon budgets working headroom on top of the weights and checks at the moment a job arrives. A 9 B model needed materially less and served fine on the same machine. Treat free memory, not installed RAM, as the requirement.
Why is my Darkbloom node serving zero requests?
Most likely it is declining jobs for memory rather than being offered none. Check slots[].load_error in ~/.darkbloom/daemon-state.json for the refusal in the daemon's own words, and warm_models to see whether anything is loaded at all. Trust and online status look perfectly healthy throughout, because they are a separate axis.
Does this work on a Mac I actually use?
Less well than on a dedicated one, and that is the honest summary of several weeks. A working Mac's free memory fluctuates below the threshold constantly, and long uptime compounds it through memory compression. If the Mac is your daily driver, advertise a small model and expect the large ones to be declined.
Is Darkbloom a cryptocurrency?
No. It is an AI inference network — your Mac serves model requests and is paid for that work. There is no coin, no token and no mining involved. Pasiv treats it as a separate earning lane from mining for exactly that reason.
Does Pasiv install Darkbloom for me?
No, and it will not. Darkbloom is proprietary third-party software; Pasiv orchestrates a provider you installed yourself and links out to them for the install. Idle Compute is experimental, opt-in, macOS-only, and shipped as beta in the app.
Idle Compute (beta) is opt-in and macOS-only · Pasiv never installs Darkbloom for you