Cryptocurrency Miner Job Distribution Over Serial Compute Buses
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The winner-takes-all compensation scheme in cryptocurrency mining creates an arms race for more efficient miners, leading to inefficiencies and risks, which mining pools attempt to mitigate by sharing processing power, but existing methods lack optimal job distribution strategies.
Innovation Solution
A cryptocurrency miner design with a miner controller that manages compute boards, distributes jobs efficiently, and submits work to a pool server, using a master-slave protocol over SPI buses, and employs a Job Submit command format to optimize job distribution among compute modules.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If miners use winner-takes-all compensation scheme, then individual miner motivation is improved, but system efficiency deteriorates due to arms race for more efficient miners
Solution Approach 1:
The patent segments the mining process into distinct job units that can be independently distributed and tracked. The job queue divides work into manageable chunks with unique identifiers, allowing the system to process and reward miners incrementally rather than requiring complete block validation before any reward distribution, thus improving productivity while reducing wasted computational energy.
Solution Approach 2:
The patent implements feedback mechanisms through job status tracking and reward distribution systems. The miner controller monitors job completion status and provides feedback to miners about their contribution to the pool, enabling efficient reward allocation based on actual work performed rather than requiring arms-race level competition, thereby improving system efficiency.
2Reliability
If mining pools share processing power, then risk is reduced, but job distribution efficiency deteriorates without optimal strategies
Solution Approach 1:
The patent implements dynamic job distribution mechanisms where the miner controller actively manages and adjusts job allocation based on pool status, miner performance, and workload conditions. The system dynamically creates and distributes jobs from a job queue, adapting to changing conditions rather than using static allocation, thus maintaining both reliability and productivity in the mining pool operation.
3Productivity
If miner controller manages multiple compute boards, then computational capacity is improved, but system complexity deteriorates
Solution Approach 1:
The patent implements a universal miner controller architecture that can manage multiple compute boards through standardized interfaces and protocols. The controller uses a common job submission mechanism and communication protocol (such as SPI buses) that works across different compute board types, allowing the system to scale computational capacity without proportionally increasing system complexity.
Data Source
AI summary
Distribution of jobs among compute modules of a cryptocurrency miner is disclosed. A cryptocurrency miner may include a serial bus, compute modules, and a controller. The controller may receive a candidate block, generate jobs based on the candidate block, and distribute the jobs among the plurality of compute modules by issuing a job submit command to the compute modules via the serial bus. The job submit command may comprise block sets that at least partially define the plurality of jobs. The block sets may include a plurality of midstates that correspond to a plurality of message blocks.


