Add -maxblocksintransit: tunable per-peer block-download window
The per-peer in-flight block window (MAX_BLOCKS_IN_TRANSIT_PER_PEER) was a hardcoded 16. On a single, high-latency peer during IBD the transfer is bandwidth-delay-product bound (window / RTT), so with tiny sub-checkpoint blocks the window, not bandwidth, is the ceiling — measured ~4x throughput going 16 -> 64 on a 350ms-RTT peer. Make it a runtime flag (default 16, clamped 1..4096), logged at startup. No behavior change at the default. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -90,6 +90,7 @@ static int64_t nTimeBestReceived = 0;
|
||||
CWaitableCriticalSection csBestBlock;
|
||||
CConditionVariable cvBlockChange;
|
||||
int nScriptCheckThreads = 0;
|
||||
int MAX_BLOCKS_IN_TRANSIT_PER_PEER = DEFAULT_MAX_BLOCKS_IN_TRANSIT_PER_PEER;
|
||||
int nRandomXVerifyThreads = 0; // parallel RandomX pre-verification worker count (0 = inline only)
|
||||
bool fExperimentalMode = true;
|
||||
bool fImporting = false;
|
||||
|
||||
Reference in New Issue
Block a user