| |
|
This project presents a Distributed Mining Monitor, a controlled experimental platform designed to study Proof-of-Work (PoW) consensus in a distributed setting. The system includes a coordinator service, a configurable set of CPU and GPU miners, and a monitoring dashboard exposing the behaviour of the system in real time. The goal is not to implement a production-ready blockchain, but rather a reproducible laboratory for observing miner competition, fork creation, stale work, branch persistence, and reorganization events. The final version of the project supports heterogeneous miners, local branch persistence, configurable reorganization thresholds, simulated network delay, and a simplified difficulty-adjustment policy. Instead of re-synchronising to the coordinator before every mining attempt, miners can continue mining on their local branch and switch back to the coordinator only when they fall sufficiently behind. This makes competing branches persist long enough to generate visible reorgs. The coordinator stores the full block DAG, selects the canonical branch according to an explicit policy, and exposes metrics consumed by a dashboard that visualises chain growth, stale branches, accepted blocks by miner, reject rate, difficulty level, and block-DAG evolution.