核心数量

psutil.cpu_count(logical=True) - 原文

返回系统中逻辑 CPU 的数量(与 Python 3.4 中的 os.cpu_count 相同)或 None 如果未确定。“逻辑 CPU”是指物理内核数乘以每个内核上可以运行的线程数(这称为超线程)。如果 logical 为 False,则仅返回物理内核的数量,如果未确定,则返回 None。 在 OpenBSD 和 NetBSD 上 psutil.cpu_count(logical=False) 总是返回 None 。下面是具有 2 个内核 + 超线程的系统示例:

>>> import psutil
>>> psutil.cpu_count()
4
>>> psutil.cpu_count(logical=False)
2

请注意, psutil.cpu_count() 可能不一定等于当前进程可以使用的实际 CPU 数量。如果进程 CPU 亲和性已更改、正在使用 Linux cgroups 或(在 Windows 的情况下)在使用处理器组或具有超过 64 个 CPU 的系统上,这可能会有所不同。 可用 CPU 的数量可以通过以下方式获得:

>>> len(psutil.Process().cpu_affinity())
1
psutil.cpu_stats()