* ok wgpu runs hello world
* toy hasher
* separate wgsl file
* kinda poseidon2
* test vectors
* closer
* a bit of debug
* closer
* sort of almost
* fixed gf_mul
* merge gf_mul back into mining, clean up tests
* fix bytes_to_field_elements
* linear layer fixed
* maybe better?
* mds tests
* cleanup debug output
* found gf_mul bug
* fixed gf_mul bug
* efficient sbox again
* mds matches
* cleanup
* test internal layer
* cleaner
* external linear passes
* external layer tests
* fixed the constants
* moar tests
* more cleaning
* actually test just internal
* fairly clean tests now
* removed another pointless test
* more cleanup
* gf_from_const tests
* testing
* fixed permutations
* double hash tests, but they fail
* moar tests!
* hash-twice works, thanks Gemini 3 Pro!
* gpu runs but doesn't mine
* better logging
* lock workers to gpu
* send target to gpu not difficulty
* fix verify_nonce
* double hash failures
* double hash matches
* tests pass and it mines now
* fix benches
* a bit faster now
* improved logging
* fix benches
* simplified gpu code
* further simplification
* a bit simpler
* slight simplification
* a bit faster
* dynamic thread allocation and work coarsening
* more benching
* faster
* faster
* faster
* clean up documentation
* a bit faster
* simplify
* simplify
* optimized mds
* almost par with cpu now
* fmt
* clippy
* support multiple gpus
* clippy
* unused
* fixed some logs
---------
Co-authored-by: Nikolaus Heger <nheger@gmail.com>
* support new pow algo, remove montgomery
* format
* remove redundant check
* use local poseidon until we release
* back to release
* remove unnecessary fxn
* comment out cuda for now
* comment out open-cl
* fix more tests
* remove cuda jobs
kernel launches
Include detailed logs for device info, context creation, buffer
allocations, kernel resolution and launch parameters, and data transfers
to help diagnose CUDA behavior and failures. Also add fallback and error
logging enhancements.
Refactor all NVIDIA GPU profiles for mixed-load (lower) and dedicated
(upper) configurations. Enable auto-tuning of per-batch iterations (do
not set desired iters). Adjust thread/block counts, iteration budgets,
and enable/disable sampling and verification to balance responsiveness
and overhead for each profile. Add usage tips and logging level
guidance.
Add dynamic tuning of desired_iters based on coverage and thread count.
Enhance info logs with attempts and utilization metrics. Update example
config.
Enable sampler debugging via MINER_CUDA_SAMPLER env var to verify
host/device parity of sampler outputs, logging warnings on mismatch
Add example env file for RTX 3060 debug configuration
Provide example .env files targeting typical block/thread configurations
for RTX 3060/3080/3090/4080/4090/5090 and A5000/A6000.
Include guidance on tuning iterations, pinned buffers, and kernel modes.
Document usage with systemd and manual export for ease of deployment.
- Detect effective CPUs with cpuset awareness (cgroup v2/v1 fallback) -
Log detected cpuset mask or fallback info at startup (debug) - Expose
miner_effective_cpus Prometheus gauge (metrics feature) - Add
production-ready systemd unit and example CPU affinity overrides -
Include documentation for installation, overrides, and validation