This is an automated email from the ASF dual-hosted git repository.

ccondit pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/yunikorn-site.git


The following commit(s) were added to refs/heads/master by this push:
     new 56ed96b4df [YUNIKORN-3001] Document GOGC and GOMEMLIMIT settings (#506)
56ed96b4df is described below

commit 56ed96b4dfe97adc355a9e4a82526168803212b2
Author: Craig Condit <[email protected]>
AuthorDate: Mon Dec 16 15:28:29 2024 -0600

    [YUNIKORN-3001] Document GOGC and GOMEMLIMIT settings (#506)
    
    Closes: #506
---
 docs/user_guide/service_config.md | 40 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/docs/user_guide/service_config.md 
b/docs/user_guide/service_config.md
index 7d0f813e1f..c68e74ba3f 100644
--- a/docs/user_guide/service_config.md
+++ b/docs/user_guide/service_config.md
@@ -351,6 +351,46 @@ admissionController:
       cpu: 500m
       memory: 500Mi
 ```
+
+Additionally, garbage collection and memory usage can be tuned as follows
+(default values are shown):
+```yaml
+# Scheduler container GC configuration
+goGC: 100
+goMemoryLimit: 1536MiB
+
+# Web UI container resources
+web:
+  goGC: 100
+  goMemoryLimit: 200MiB
+
+# Admission controller GC configuration
+admissionController:
+  goGC: 100
+  goMemoryLimit: 200MiB
+```
+
+The `goGC`, `web.goGC`, and `admissionController.goGC` settings control the
+percentage of new, unallocated heap memory vs. current live memory at which
+the Go runtime initates garbage collection for the scheduler, Web UI, and
+Admission Controller, respectively.
+
+The default value of `100` matches the Go runtime default. This value is
+passed into the container via the `GOGC` environment variable.
+
+The `goMemoryLimit`, `web.goMemoryLimit`, and
+`admissionController.goMemoryLimit` is used to set a soft limit on the
+total amount of memory the Go runtime is allowed to consume. This limit
+applies to memory managed by the Go runtime. This value should be set
+lower than the respective value of `resources.limits.memory` to allow
+for transient spikes in memory usage as well as memory usage which is
+not managed by the Go runtime.
+
+Legal values consist of a numeric value in bytes with an optional unit
+suffix. The supported suffixes include `B`, `KiB`, `MiB`, `GiB`, and
+`TiB`. This value is passsed into the container via the `GOMEMLIMIT`
+environment variable.
+
 ### Optional features
 
 #### embedAdmissionController


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to