4b5f84959c
AMD GPU backend: - Add the GCN-tuned equihash192_7.cl kernel (clearCounter/blake/round1..7/ combine pipeline) and its host driver src/gpu_amd.rs. GpuSolver now dispatches AMD-vendor OpenCL devices to it and other devices to the existing kernel (force with ZCL_OPENCL_KERNEL=amd|legacy). Validated on an RX 9060 XT: GPU solutions match the CPU reference 1/1. - Expose BatchHasher::midstate() for the kernel's ulong8 hashState arg. Runtime-loaded GPU drivers (minimum host deps): - dlopen libcuda / libnvidia-ml via libloading instead of linking them (src/dylib.rs macro; cuda.rs, nvml.rs, gpu_probe.rs). The binary now builds and starts on hosts without an NVIDIA driver and reports no CUDA devices gracefully; remove build.rs (its only job was linking those libs). - Add Dockerfile.portable + build-portable.sh: build against Debian bullseye's glibc 2.31 for a binary that runs on older distros and drives both AMD (OpenCL) and NVIDIA (CUDA) cards. Document the build matrix in the README. Mixed backend (default): - Add --backend mixed (now the default): each card on its native backend (NVIDIA->CUDA, AMD/Intel->OpenCL), deduped so no card is mined twice. --devices indexes the unified list shown by --list-devices. Misc: - Stale-work timeout (--job-timeout) default 300s -> 600s (10 minutes). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
55 lines
3.6 KiB
TOML
55 lines
3.6 KiB
TOML
# Example jackpotminer configuration file.
|
|
#
|
|
# Load it with: jackpotminer --config mine.toml
|
|
#
|
|
# Any value set here is used unless the same option is also passed on the command
|
|
# line (the CLI always wins over the file, and the file wins over the built-in
|
|
# defaults). Keys are the long flag names without the leading "--". Unknown keys
|
|
# are rejected, so a typo is reported rather than silently ignored.
|
|
#
|
|
# Copy this file, edit the pool + wallet, uncomment what you need:
|
|
# cp mine.example.toml mine.toml && $EDITOR mine.toml
|
|
# jackpotminer --config mine.toml
|
|
|
|
# ── Pool (required) ───────────────────────────────────────────────────────────
|
|
url = "stratum+tcp://zcl.pool.example:3032" # stratum+tcp://host:port, or host:port
|
|
user = "t1YourZClassicAddressHere.rig1" # payout address / worker login
|
|
# port = 3032 # only if `url` has no ":port"
|
|
|
|
# ── Payout mode (set at most one) ─────────────────────────────────────────────
|
|
# pass = "jackpot" # default; also accepts "no-jackpot" / "solo" literally
|
|
# solo = true
|
|
# jackpot = 50 # participation percent 3-100 -> "jackpot.50"
|
|
# no-jackpot = true # PPLNS
|
|
|
|
# ── GPU backend ───────────────────────────────────────────────────────────────
|
|
# backend = "mixed" # "mixed" (default: NVIDIA→CUDA, AMD/Intel→OpenCL),
|
|
# # "opencl" (every card via OpenCL), or "cuda"
|
|
# devices = "all" # "all", or a comma list e.g. "0,1" — in mixed mode
|
|
# # these index the combined list from --list-devices
|
|
# force-opencl = false # force every card onto OpenCL, disabling CUDA
|
|
|
|
# ── GPU tuning (clock/power changes need root) ────────────────────────────────
|
|
# no-gpu-tune = false
|
|
# auto-tune = false
|
|
# power-limit = 250 # watts
|
|
# gpu-clock = 2700 # MHz (lock SM/core clock)
|
|
# mem-clock = 10000 # MHz (lock memory clock)
|
|
# gpu-clock-offset = 150 # MHz, signed V/F offset
|
|
# mem-clock-offset = 0 # MHz, signed V/F offset
|
|
# unlock-controls = false # allow the dashboard's live clock/power keys
|
|
|
|
# ── CPU mining (runs alongside the GPU) ───────────────────────────────────────
|
|
# cpu = false # use the CPU as the primary solver (no GPU)
|
|
# cpu-mining = false # start the CPU core rows enabled at launch
|
|
# cpu-cores = "0-7" # which logical cores (default: all)
|
|
# cpu-group-size = 4 # cores per CPU mining row (1 = one solve per core)
|
|
# cpu-clamp = 32 # collision-bucket clamp (0 = exact solver, can OOM)
|
|
|
|
# ── Misc ──────────────────────────────────────────────────────────────────────
|
|
# threads = 24 # solver CPU threads (default: all cores)
|
|
# job-timeout = 300 # seconds; pause on stale work (0 disables)
|
|
# no-tui = false # disable the dashboard, print log lines instead
|
|
# control-port = 4068 # open 127.0.0.1:<port> so the GUI config tool can
|
|
# retrieve/adjust this miner live (off by default)
|