snc icon indicating copy to clipboard operation
snc copied to clipboard

Disable huge memory pages

Open guillaumerose opened this issue 5 years ago • 2 comments

Change

RHCOS defaults to ‘huge memory pages’. Disabling ‘huge memory pages’ and switching to typical 4K pages helps GoLang to gather more idle memory (more and smaller pages can be ready for garbage collection). Rebooting node with Linux kernel parameter ‘transparent_hugepage=never’ enables the switch to smaller memory pages (4K).

How

With grubby update to include kernel parameter to disable ‘huge pages’.

Implemented in https://github.com/code-ready/snc/pull/246

Expected and mesured improvements

Pros

Cons

  • little chance to get accepted upstream

guillaumerose avatar Nov 19 '20 09:11 guillaumerose

MachineConfig object has a kernelArguments property. Perhaps we can use it to pass the parameter.

Docs: https://github.com/openshift/installer/blob/38362a33f03a5583aa681ce39692845ca6ce82ee/docs/user/customization.md#switching-rhcos-host-kernel-using-kerneltype

guillaumerose avatar Dec 01 '20 12:12 guillaumerose

Minikube doesn't disable huge pages.

guillaumerose avatar Dec 15 '20 10:12 guillaumerose