我们以这款处理器为例:2核4线程(每核2线程)的CPU。
据我所知,这样的CPU有2个物理核心,但可以通过超线程同时处理4个线程。但实际上,一个物理核心一次只能真正运行一个线程,但使用超线程,CPU 可利用管道中的空闲阶段来处理另一个线程。
现在,这是带有 Prometheus 和 Grafana 的Kubernetes及其 CPU 资源单位测量 - millicore/millicpu。因此,他们实际上将一个核心切成 1000 毫核心。
考虑到超线程,我无法理解他们如何在幕后计算这些毫核。
例如,一个进程如何使用 100millicore(核心的第 10 部分)?这在技术上怎么可能?
PS:无意中,在这里找到了一个真正描述性的解释:Multi threading with Millicores in Kubernetes