@@ -357,39 +357,39 @@ Additionally, garbage collection and memory usage can be tuned as follows
357357` ` ` yaml
358358# Scheduler container GC configuration
359359goGC: 100
360- goMemoryLimit: 1536MiB
360+ goMemoryLimitPercentage: 80
361361
362362# Web UI container resources
363363web:
364364 goGC: 100
365- goMemoryLimit: 200MiB
365+ goMemoryLimitPercentage: 60
366366
367367# Admission controller GC configuration
368368admissionController:
369369 goGC: 100
370- goMemoryLimit: 200MiB
370+ goMemoryLimitPercentage: 60
371371` ` `
372372
373373The `goGC`, `web.goGC`, and `admissionController.goGC` settings control the
374374percentage of new, unallocated heap memory vs. current live memory at which
375- the Go runtime initates garbage collection for the scheduler, Web UI, and
375+ the Go runtime initiates garbage collection for the scheduler, Web UI, and
376376Admission Controller, respectively.
377377
378378The default value of `100` matches the Go runtime default. This value is
379379passed into the container via the `GOGC` environment variable.
380380
381- The `goMemoryLimit`, `web.goMemoryLimit`, and
382- ` admissionController.goMemoryLimit` is used to set a soft limit on the
383- total amount of memory the Go runtime is allowed to consume. This limit
384- applies to memory managed by the Go runtime. This value should be set
385- lower than the respective value of `resources.limits.memory` to allow
386- for transient spikes in memory usage as well as memory usage which is
387- not managed by the Go runtime.
381+ The `goMemoryLimitPercentage`, `web.goMemoryLimitPercentage`, and
382+ ` admissionController.goMemoryLimitPercentage` are used to set a soft limit on
383+ the total amount of memory the Go runtime is allowed to consume. This limit
384+ applies to memory managed by the Go runtime. The setting helps manage transient
385+ spikes in memory usage as well as memory usage which is not managed by the Go
386+ runtime.
388387
389- Legal values consist of a numeric value in bytes with an optional unit
390- suffix. The supported suffixes include `B`, `KiB`, `MiB`, `GiB`, and
391- ` TiB` . This value is passsed into the container via the `GOMEMLIMIT`
392- environment variable.
388+ The value is applied to the `resources.limits.memory` setting for the container
389+ when the pod is created. A value of 80 is interpreted as 80% and is applied to
390+ the `resources.limits.memory`.
391+ The resulting value is the memory limit in bytes, and is passed into the
392+ container via the `GOMEMLIMIT` environment variable.
393393
394394# ## Optional features
395395
@@ -447,6 +447,26 @@ yunikornDefaults:
447447` ` `
448448
449449# ## Deprecated settings
450+
451+ # ### goMemoryLimit setting (specified value)
452+
453+ **_DEPRECATED in 1.9.0:_** replaced by `goMemoryLimitPercentage`
454+
455+ The `goMemoryLimit`, `web.goMemoryLimit`, and
456+ ` admissionController.goMemoryLimit` are used to set a soft limit on the
457+ total amount of memory the Go runtime is allowed to consume. This limit
458+ applies to memory managed by the Go runtime. This value should be set
459+ lower than the respective value of `resources.limits.memory` to allow
460+ for transient spikes in memory usage as well as memory usage which is
461+ not managed by the Go runtime.
462+
463+ Legal values consist of a numeric value in bytes with an optional unit
464+ suffix. The supported suffixes include `B`, `KiB`, `MiB`, `GiB`, and
465+ ` TiB` . This value is passsed into the container via the `GOMEMLIMIT`
466+ environment variable.
467+
468+ # ### Moved to ConfigMap
469+
450470The following settings are deprecated, and will be removed from a future
451471YuniKorn release. They should now be specified in the `yunikorn-configs` ConfigMap
452472or via the Helm `yunikornDefaults` section :
0 commit comments