aws / aws/aws-nitro-enclaves-cli
Support finer-grained control over hugepages allocations
- Dominant language
- Rust
- Stars
- 156
- Forks
- 99
- PR merge metrics
- No merged PRs in 30d
Description
The current behavior of the `nitro-enclaves-allocator` script is to allocate the largest possible page first, then move on to smaller pages as necessary. While this generally makes sense, it can result in over-allocation of memory when you want to run multiple enclaves on a single node.
For example, if I want to allocate 2GB of memory for huge pages, the allocator will allocate 2 1GB pages. However, now if I'm using Kubernetes and want to schedule one pod that uses 1.5GB of memory and another of 500MB, I am unable to unless I request more memory than needed.
It would be wonderful if the max page size could be controlled via the `allocator.yaml` config. Even better would be fine-grained control over how many of each page size to allocate.
Contributor guide
Research direction
Start by reading the nitro-enclaves-allocator script and the allocator.yaml configuration described in the issue. Determine how allocation order and page sizes are configured; done means the configuration can cap the maximum page size and, ideally, specify counts for each page size while supporting the stated Kubernetes allocation example.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cli, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100