Only do expensive area coverage calculation if there where blocks loaded from database.

If there are not, nothing changed, so nothing to recalculate.
Takes a good deal from the clock.
This commit is contained in:
Sascha L. Teichmann
2017-02-26 12:57:38 +01:00
parent 7f78feb9bd
commit 3e3413566b
4 changed files with 39 additions and 20 deletions

View File

@ -8,6 +8,8 @@ import (
"flag"
"fmt"
"log"
"os"
"runtime/pprof"
"bitbucket.org/s_l_teichmann/mtsatellite/common"
)
@ -27,6 +29,7 @@ func main() {
transparent bool
transparentDim float64
version bool
cpuProfile string
)
defaultBgColor := common.ColorToHex(common.BackgroundColor)
@ -60,6 +63,7 @@ func main() {
"td", common.DefaultTransparentDim*100.0,
"Extra fimming of transparent nodes each depth meter in percent. (shorthand)")
flag.BoolVar(&version, "version", false, "Print version and exit.")
flag.StringVar(&cpuProfile, "c", "", "Dump pprof profile to file.")
flag.Parse()
@ -67,6 +71,15 @@ func main() {
common.PrintVersionAndExit()
}
if cpuProfile != "" {
f, err := os.Create(cpuProfile)
if err != nil {
log.Fatal(err)
}
pprof.StartCPUProfile(f)
defer pprof.StopCPUProfile()
}
bg := common.ParseColorDefault(bgColor, common.BackgroundColor)
if !skipBaseLevel {