From d69d99f6ab1080bdd5d34ba2daae82ab2a346942 Mon Sep 17 00:00:00 2001 From: Nathan Johnson Date: Tue, 1 Dec 2020 15:16:45 -0600 Subject: [PATCH] Updating the default GOGC to 100. 800 proves to be a bit insane. --- config/default.go | 2 +- docs/content/ref/runtime.gogc.md | 15 +++------------ fabio.properties | 18 +++--------------- 3 files changed, 7 insertions(+), 28 deletions(-) diff --git a/config/default.go b/config/default.go index feeb79c5d..5738b0392 100644 --- a/config/default.go +++ b/config/default.go @@ -81,7 +81,7 @@ var defaultConfig = &Config{ Retry: 500 * time.Millisecond, }, Runtime: Runtime{ - GOGC: 800, + GOGC: 100, GOMAXPROCS: runtime.NumCPU(), }, UI: UI{ diff --git a/docs/content/ref/runtime.gogc.md b/docs/content/ref/runtime.gogc.md index 6d23167ab..3c7e308a9 100644 --- a/docs/content/ref/runtime.gogc.md +++ b/docs/content/ref/runtime.gogc.md @@ -11,18 +11,9 @@ the value from the config file. Increasing this value means fewer but longer GC cycles since there is more garbage to collect. -The default of `GOGC=100` works for Go 1.4 but shows -a significant performance drop for Go 1.5 since the -concurrent GC kicks in more often. - -During benchmarking I have found the following values -to work for my setup and for now I consider them sane -defaults for both Go 1.4 and Go 1.5. - - GOGC=100: Go 1.5 40% slower than Go 1.4 - GOGC=200: Go 1.5 == Go 1.4 with GOGC=100 (default) - GOGC=800: both Go 1.4 and 1.5 significantly faster (40%/go1.4, 100%/go1.5) +NOTE - the default for fabio up to 1.5.14 was 800. This changed +to 100 in version 1.5.15 The default is - runtime.gogc = 800 + runtime.gogc = 100 diff --git a/fabio.properties b/fabio.properties index 0ec7a018b..ae432fb47 100644 --- a/fabio.properties +++ b/fabio.properties @@ -1184,24 +1184,12 @@ # environment variable which also takes precedence over # the value from the config file. # -# Increasing this value means fewer but longer GC cycles -# since there is more garbage to collect. -# -# The default of GOGC=100 works for Go 1.4 but shows -# a significant performance drop for Go 1.5 since the -# concurrent GC kicks in more often. -# -# During benchmarking I have found the following values -# to work for my setup and for now I consider them sane -# defaults for both Go 1.4 and Go 1.5. -# -# GOGC=100: Go 1.5 40% slower than Go 1.4 -# GOGC=200: Go 1.5 == Go 1.4 with GOGC=100 (default) -# GOGC=800: both Go 1.4 and 1.5 significantly faster (40%/go1.4, 100%/go1.5) +# NOTE - the default for fabio up to 1.5.14 was 800. This changed +# to 100 in version 1.5.15 # # The default is # -# runtime.gogc = 800 +# runtime.gogc = 100 # runtime.gomaxprocs configures GOMAXPROCS.