From f1e3a68dc49bcce4d42fbbcb450f2d6a1e499211 Mon Sep 17 00:00:00 2001 From: Eric Coissac Date: Sun, 21 Aug 2022 13:44:09 +0200 Subject: [PATCH] improved performance --- cmd/obitools/obipcr/main.go | 27 ++++++++++++++------------- pkg/obitools/obipcr/pcr.go | 3 ++- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/cmd/obitools/obipcr/main.go b/cmd/obitools/obipcr/main.go index 5ecf59f..889eee2 100644 --- a/cmd/obitools/obipcr/main.go +++ b/cmd/obitools/obipcr/main.go @@ -1,9 +1,10 @@ package main import ( - log "github.com/sirupsen/logrus" "os" - "runtime/trace" + "runtime/pprof" + + log "github.com/sirupsen/logrus" "git.metabarcoding.org/lecasofts/go/obitools/pkg/obioptions" "git.metabarcoding.org/lecasofts/go/obitools/pkg/obitools/obiconvert" @@ -13,20 +14,20 @@ import ( func main() { // go tool pprof -http=":8000" ./obipairing ./cpu.pprof - // f, err := os.Create("cpu.pprof") - // if err != nil { - // log.Fatal(err) - // } - // pprof.StartCPUProfile(f) - // defer pprof.StopCPUProfile() - - // go tool trace cpu.trace - ftrace, err := os.Create("cpu.trace") + f, err := os.Create("cpu.pprof") if err != nil { log.Fatal(err) } - trace.Start(ftrace) - defer trace.Stop() + pprof.StartCPUProfile(f) + defer pprof.StopCPUProfile() + + // go tool trace cpu.trace + // ftrace, err := os.Create("cpu.trace") + // if err != nil { + // log.Fatal(err) + // } + // trace.Start(ftrace) + // defer trace.Stop() optionParser := obioptions.GenerateOptionParser(obipcr.OptionSet) diff --git a/pkg/obitools/obipcr/pcr.go b/pkg/obitools/obipcr/pcr.go index 7515dfa..466e779 100644 --- a/pkg/obitools/obipcr/pcr.go +++ b/pkg/obitools/obipcr/pcr.go @@ -3,6 +3,7 @@ package obipcr import ( "git.metabarcoding.org/lecasofts/go/obitools/pkg/obiapat" "git.metabarcoding.org/lecasofts/go/obitools/pkg/obiiter" + "git.metabarcoding.org/lecasofts/go/obitools/pkg/obioptions" ) // PCR iterates over sequences provided by a obiseq.IBioSequenceBatch @@ -37,5 +38,5 @@ func PCR(iterator obiiter.IBioSequenceBatch) (obiiter.IBioSequenceBatch, error) worker := obiapat.PCRSliceWorker(opts...) - return iterator.MakeISliceWorker(worker), nil + return iterator.MakeISliceWorker(worker, obioptions.CLIParallelWorkers(), 0), nil }