Browse Source

miner: removed default timer & update dag when threads > 0

obscuren 10 years ago
parent
commit
2c1a6a349b
2 changed files with 8 additions and 16 deletions
  1. 8 4
      miner/miner.go
  2. 0 12
      miner/worker.go

+ 8 - 4
miner/miner.go

@@ -16,9 +16,10 @@ type Miner struct {
 
 	MinAcceptedGasPrice *big.Int
 
-	mining bool
-	eth    core.Backend
-	pow    pow.PoW
+	threads int
+	mining  bool
+	eth     core.Backend
+	pow     pow.PoW
 }
 
 func New(eth core.Backend, pow pow.PoW, minerThreads int) *Miner {
@@ -28,6 +29,7 @@ func New(eth core.Backend, pow pow.PoW, minerThreads int) *Miner {
 	for i := 0; i < minerThreads; i++ {
 		miner.worker.register(NewCpuMiner(i, pow))
 	}
+	miner.threads = minerThreads
 
 	return miner
 }
@@ -40,7 +42,9 @@ func (self *Miner) Start(coinbase common.Address) {
 	self.mining = true
 	self.worker.coinbase = coinbase
 
-	self.pow.(*ethash.Ethash).UpdateDAG()
+	if self.threads > 0 {
+		self.pow.(*ethash.Ethash).UpdateDAG()
+	}
 
 	self.worker.start()
 

+ 0 - 12
miner/worker.go

@@ -6,7 +6,6 @@ import (
 	"sort"
 	"sync"
 	"sync/atomic"
-	"time"
 
 	"github.com/ethereum/go-ethereum/common"
 	"github.com/ethereum/go-ethereum/core"
@@ -151,8 +150,6 @@ func (self *worker) register(agent Agent) {
 func (self *worker) update() {
 	events := self.mux.Subscribe(core.ChainHeadEvent{}, core.ChainSideEvent{}, core.TxPreEvent{})
 
-	timer := time.NewTicker(2 * time.Second)
-
 out:
 	for {
 		select {
@@ -171,15 +168,6 @@ out:
 			}
 		case <-self.quit:
 			break out
-		case <-timer.C:
-			if glog.V(logger.Detail) && atomic.LoadInt64(&self.mining) == 1 {
-				glog.Infoln("Hash rate:", self.HashRate(), "Khash")
-			}
-
-			// XXX In case all mined a possible uncle
-			if atomic.LoadInt64(&self.atWork) == 0 && atomic.LoadInt64(&self.mining) == 1 {
-				self.commitNewWork()
-			}
 		}
 	}