endif
PACKAGES := $(shell go list ./... | grep -v '/vendor/' | grep -v '/crypto/ed25519/chainkd' | grep -v '/mining/tensority')
+PACKAGES += 'github.com/bytom/mining/tensority/go_algorithm'
+
BUILD_FLAGS := -ldflags "-X github.com/bytom/version.GitCommit=`git rev-parse HEAD`"
MINER_BINARY32 := miner-$(GOOS)_386
bytomd:
@echo "Building bytomd to cmd/bytomd/bytomd"
- @CGO_ENABLED=0 go build $(BUILD_FLAGS) -o cmd/bytomd/bytomd cmd/bytomd/main.go
+ @go build $(BUILD_FLAGS) -o cmd/bytomd/bytomd cmd/bytomd/main.go
bytomd-simd:
@echo "Building SIMD version bytomd to cmd/bytomd/bytomd"
@cd mining/tensority/cgo_algorithm/lib/ && make
- @CGO_ENABLED=1 go build $(BUILD_FLAGS) -o cmd/bytomd/bytomd cmd/bytomd/main.go
+ @go build -tags="simd" $(BUILD_FLAGS) -o cmd/bytomd/bytomd cmd/bytomd/main.go
bytomcli:
@echo "Building bytomcli to cmd/bytomcli/bytomcli"
test:
@echo "====> Running go test"
- @CGO_ENABLED=0 go test -tags "network" $(PACKAGES)
+ @go test -tags "network" $(PACKAGES)
benchmark:
- @CGO_ENABLED=0 go test -bench $(PACKAGES)
+ @go test -bench $(PACKAGES)
functional-tests:
- @CGO_ENABLED=0 go test -v -timeout=5m -tags=functional ./test
+ @go test -v -timeout=5m -tags="functional" ./test
ci: test functional-tests
-.PHONY: all target release-all clean test benchmark
+.PHONY: all target release-all clean test benchmark
\ No newline at end of file
-package tensority
+package go_algorithm
import (
"reflect"
}
// Tests that tensority hash result is correct.
-func TestAlgorithm(t *testing.T) {
+func TestLegacyAlgorithm(t *testing.T) {
startT := time.Now()
for i, tt := range tests {
sT := time.Now()
bhhash := bc.NewHash(tt.blockHeader)
sdhash := bc.NewHash(tt.seed)
- result := algorithm(&bhhash, &sdhash).Bytes()
+ result := LegacyAlgorithm(&bhhash, &sdhash).Bytes()
var resArr [32]byte
copy(resArr[:], result)
eT := time.Now()
t.Log("Avg time:", time.Duration(int(endT.Sub(startT))/len(tests)))
}
-func BenchmarkAlgorithm(b *testing.B) {
+func BenchmarkLegacyAlgorithm(b *testing.B) {
bhhash := bc.NewHash(tests[0].blockHeader)
sdhash := bc.NewHash(tests[0].seed)
b.ResetTimer()
for i := 0; i < b.N; i++ {
- algorithm(&bhhash, &sdhash)
+ LegacyAlgorithm(&bhhash, &sdhash)
}
}
-func BenchmarkAlgorithmParallel(b *testing.B) {
+func BenchmarkLegacyAlgorithmParallel(b *testing.B) {
bhhash := bc.NewHash(tests[0].blockHeader)
sdhash := bc.NewHash(tests[0].seed)
b.SetParallelism(runtime.NumCPU())
b.RunParallel(func(pb *testing.PB) {
for pb.Next() {
- algorithm(&bhhash, &sdhash)
+ LegacyAlgorithm(&bhhash, &sdhash)
}
})
}
-
-func init() {
- UseSIMD = true
-}