Support Instance Types label for NUMA Architecture
Description
What problem are you trying to solve?
Currently, the only way for a given workload to avoid EC2 Instance Types that use NUMA architecture is to set nodeAffinity nodeSelectorTerms to filter out a manually curated list of EC2 Instance Types that have 2 or more NUMA Nodes.
This leads to a need to manually edit the list every time a new Instance Type that use NUMA is launched.
The main pain point is that it's currently impossible to filter out EC2 Instance Types that use NUMA Architecture by using a single label.
How important is this feature to you?
It's import for workloads that use great amount of memory in order to prevent latency issues caused by the workload alocating memory in multiple NUMA Nodes, in other words, with memory attached to another CPU group.
The main performance concern is remote memory access. If a thread runs on one NUMA node but frequently reads or writes memory attached to another node, the access usually has higher latency and lower effective bandwidth than local access. That can show up as noisy latency, lower throughput, or poor scaling even when CPU and memory usage look reasonable at a high level.
- Please vote on this issue by adding a reaction to the original issue to help the community and maintainers prioritize this request
- Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
- If you are interested in working on this issue or have submitted a pull request, please leave a comment
Source: aws/karpenter-provider-aws