This is Sen. I am a software architect from ARM.
I am looking into computing resource (such as CPU and memory) allocation/management scheme in K8s. It looks like K8s supports one generic CPU type, and one generic memory type (The memory can be further distinguished using normal memory and huge pages with different sizes).
In the current market, a worker node may contain multiple CPU types. For example, a worker node may have performance cores, and efficiency cores; some cores may have access to a specific accelerator while other cores may not; some cores may have large cache, and some cores may have small cache…
A worker mode may have access to local on-chip buffers, DDR, and high bandwidth memory.
It would be desirable that a workload (POD) can specify the CPU type or memory type in its resource request, so that such POD can be deployed to a worker node that can satisfy its need.
While such different resource type could be work-rounded using extended resource types through plugins, it would be much straightforward if K8s can support multiple CPU and memory types.
I would like to know if there are similar discussions on such resource allocation/management scheme, and whether there is existing development plan in place to support multiple CPU and memory types in a worker node by using native K8s CPU, memory and topology manager or not?
Very much appreciated!
Sen