aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Documentation/performance.txt1
-rw-r--r--main.go9
2 files changed, 8 insertions, 2 deletions
diff --git a/Documentation/performance.txt b/Documentation/performance.txt
index 21d9b0c..de2c1bc 100644
--- a/Documentation/performance.txt
+++ b/Documentation/performance.txt
@@ -28,6 +28,7 @@ v1.2.1-33 112 21 12 1.6 4.4 (go1.8)
v1.2.1-33
-serialize_reads 116 21 39 1.5 4.4
v1.3-27 113 20 11 1.4 4.2
+v1.3-53-gf44902a 119 19 12 1.6 4.1
Results for EncFS for comparison (benchmark.bash -encfs):
diff --git a/main.go b/main.go
index 9b0e31b..58d5e06 100644
--- a/main.go
+++ b/main.go
@@ -11,6 +11,8 @@ import (
"strings"
"time"
+ "github.com/hanwen/go-fuse/fuse"
+
"github.com/rfjakob/gocryptfs/internal/configfile"
"github.com/rfjakob/gocryptfs/internal/contentenc"
"github.com/rfjakob/gocryptfs/internal/exitcodes"
@@ -18,7 +20,6 @@ import (
"github.com/rfjakob/gocryptfs/internal/speed"
"github.com/rfjakob/gocryptfs/internal/stupidgcm"
"github.com/rfjakob/gocryptfs/internal/tlog"
- "github.com/hanwen/go-fuse/fuse"
)
// GitVersion is the gocryptfs version according to git, set by build.bash
@@ -111,7 +112,11 @@ func printVersion() {
}
func main() {
- runtime.GOMAXPROCS(4)
+ mxp := runtime.GOMAXPROCS(0)
+ if mxp < 4 {
+ // On a 2-core machine, setting maxprocs to 4 gives 10% better performance
+ runtime.GOMAXPROCS(4)
+ }
var err error
// Parse all command-line options (i.e. arguments starting with "-")
// into "args". Path arguments are parsed below.