Browse Source

Add DefaultMinerThreads chain parameter

0.10
jtimon 11 years ago
parent
commit
2595b9ac23
  1. 2
      src/chainparams.cpp
  2. 3
      src/chainparams.h
  3. 5
      src/miner.cpp

2
src/chainparams.cpp

@ -112,6 +112,7 @@ public: @@ -112,6 +112,7 @@ public:
nRPCPort = 8332;
bnProofOfWorkLimit = ~uint256(0) >> 32;
nSubsidyHalvingInterval = 210000;
nMinerThreads = 0;
// Build the genesis block. Note that the output of the genesis coinbase cannot
// be spent as it did not originally exist in the database.
@ -233,6 +234,7 @@ public: @@ -233,6 +234,7 @@ public:
pchMessageStart[2] = 0xb5;
pchMessageStart[3] = 0xda;
nSubsidyHalvingInterval = 150;
nMinerThreads = 1;
bnProofOfWorkLimit = ~uint256(0) >> 1;
genesis.nTime = 1296688602;
genesis.nBits = 0x207fffff;

3
src/chainparams.h

@ -57,6 +57,8 @@ public: @@ -57,6 +57,8 @@ public:
int GetDefaultPort() const { return nDefaultPort; }
const uint256& ProofOfWorkLimit() const { return bnProofOfWorkLimit; }
int SubsidyHalvingInterval() const { return nSubsidyHalvingInterval; }
/* Used if GenerateBitcoins is called with a negative number of threads */
int DefaultMinerThreads() const { return nMinerThreads; }
virtual const CBlock& GenesisBlock() const = 0;
virtual bool RequireRPCPassword() const { return true; }
/* Make miner wait to have peers to avoid wasting work */
@ -82,6 +84,7 @@ protected: @@ -82,6 +84,7 @@ protected:
uint256 bnProofOfWorkLimit;
int nSubsidyHalvingInterval;
string strDataDir;
int nMinerThreads;
vector<CDNSSeedData> vSeeds;
std::vector<unsigned char> base58Prefixes[MAX_BASE58_TYPES];
};

5
src/miner.cpp

@ -652,8 +652,9 @@ void GenerateBitcoins(bool fGenerate, CWallet* pwallet, int nThreads) @@ -652,8 +652,9 @@ void GenerateBitcoins(bool fGenerate, CWallet* pwallet, int nThreads)
static boost::thread_group* minerThreads = NULL;
if (nThreads < 0) {
if (Params().NetworkID() == CChainParams::REGTEST)
nThreads = 1;
// In regtest threads defaults to 1
if (Params().DefaultMinerThreads())
nThreads = Params().DefaultMinerThreads();
else
nThreads = boost::thread::hardware_concurrency();
}

Loading…
Cancel
Save