Skip to content

feat: reduce memory consumption of Scout image/OS #1839

@iExalt

Description

@iExalt

Is this a new feature, an enhancement, or a change to existing functionality?

Enhancement

How would you describe the priority of this feature request

Critical (currently preventing usage)

Please provide a clear description of problem this feature solves

Booting the Scout image and running it at steady-state consumes roughly 10GB of RAM. This is a blocker when trying to run Scout in resource constrained environments such as in a VM.

I am running the x86_64 Scout image.

Feature Description

As a user/tester of Scout, I would like the memory consumption of Scout at boot time and steady-state to be greatly reduced, so that I can run Scout in resource-constrained environments.

Describe your ideal solution

Other OS images such as the Ubuntu cloud image are designed to run with extremely low resource requirements, often 1 vCPU and 1GB RAM (Ubuntu Server docs). Since Scout doesn't need to support all the functionality of a general-purpose OS, I would expect that it can run in similar situations.

Describe any alternatives you have considered

I have considered short-circuiting the NICO lifecycle state machine and skipping the Scout step/callback altogether, although I'd like to stay as close to upstream NICO as possible.

Additional context

scout_os_memory.log

Please find attached a log at 1s-intervals of a sample VM booting Scout. You can clearly see the RSS/PSS sizes balloon to ~10GB as Scout is booting.

Code of Conduct

  • I agree to follow NCX Infra Controller's Code of Conduct
  • I have searched the open feature requests and have found no duplicates for this feature request

Metadata

Metadata

Assignees

Labels

featureFeature (deprecated - use issue type, but it's needed for reporting now)
No fields configured for Enhancement.

Projects

Status

In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions