Allow newt to use number of physical cores as default for number of jobs in newt by default (#415)
- Fixed number of cpus to be physical cores by default if possible
diff --git a/go.mod b/go.mod
index ad4b839..c795feb 100644
--- a/go.mod
+++ b/go.mod
@@ -7,6 +7,7 @@
github.com/apache/mynewt-artifact v0.0.16
github.com/kardianos/osext v0.0.0-20190222173326-2bc1f35cddc0
github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51
+ github.com/shirou/gopsutil v2.20.8+incompatible
github.com/sirupsen/logrus v1.4.2
github.com/spf13/cast v1.3.0
github.com/spf13/cobra v0.0.5
diff --git a/go.sum b/go.sum
index 2d80d79..14b8738 100644
--- a/go.sum
+++ b/go.sum
@@ -44,6 +44,8 @@
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g=
+github.com/shirou/gopsutil v2.20.8+incompatible h1:8c7Atn0FAUZJo+f4wYbN0iVpdWniCQk7IYwGtgdh1mY=
+github.com/shirou/gopsutil v2.20.8+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA=
github.com/sirupsen/logrus v1.4.2 h1:SPIRibHv4MatM3XXNO2BJeFLZwZ2LvZgfQ5+UNI2im4=
github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE=
github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ=
diff --git a/newt/newt.go b/newt/newt.go
index 3ff609a..3eb7d35 100644
--- a/newt/newt.go
+++ b/newt/newt.go
@@ -23,9 +23,9 @@
"os"
"runtime"
+ "github.com/shirou/gopsutil/cpu"
log "github.com/sirupsen/logrus"
"github.com/spf13/cobra"
-
"mynewt.apache.org/newt/newt/cli"
"mynewt.apache.org/newt/newt/newtutil"
"mynewt.apache.org/newt/newt/settings"
@@ -44,7 +44,10 @@
func newtDfltNumJobs() int {
maxProcs := runtime.GOMAXPROCS(0)
numCpu := runtime.NumCPU()
-
+ cpu, err := cpu.Counts(false)
+ if err == nil {
+ numCpu = cpu
+ }
var numJobs int
if maxProcs < numCpu {
numJobs = maxProcs