Small update to 0.16.0 for pool AI requests. Upgrade is recommended for rigs that serve inference; mining is unchanged.
Busy reply (error 46). When the pool sends a mining.ai_request and every card that serves the requested model is still running another inference, the miner now answers that request with error 46 busy instead of staying silent. The pool can then give the request to another rig straight away instead of waiting for it to time out. Before replying, the rig waits up to KERYX_AI_BUSY_WAIT_MS for a card to become free (default 5000 ms, allowed 1–30000). Every other case where a rig does not answer stays silent, as in 0.16.0. An error 46 reply from the pool to a share is logged and never closes the connection.
Everything else is unchanged from 0.16.0, including H16 handling (mainnet DAA 147,000,000, testnet 180,000, keryx-node 1.6.7). The GPU mining kernels, embedded CUDA/OpenCL kernel code and inference engines are byte-identical to 0.16.0; only the pool connection code changed.
Validation: host test suites, startup checks on Ubuntu 20.04/22.04/24.04 for every Linux archive, and archive/license audits passed. On an RTX 5070 Ti the packaged miner passed its tier-0 inference self-test and mined on mainnet against the updated pool for 70 minutes with 268 accepted and 0 rejected shares, without reconnects. The busy reply format is covered by miner and pool unit tests; no pool request arrived during the live window that required a busy reply.
Packages: Linux NVIDIA modern/legacy, Linux AMD, HiveOS, mmpOS, SMOS, Windows NVIDIA/AMD, macOS arm64, and Docker ocminersupr/keryx-miner-supr:0.16.1 / latest. Keep the executable and its bundled libraries together. Existing project and third-party licenses are preserved.
The limitations listed for 0.16.0 still apply: Metal H15/H16 is unsupported, and Windows GPU hardware was not tested for this release.