用Python获取 Windows 上的 CPU 插槽数、物理核数、逻辑处理器数
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
简洁版:获取 Windows 上的 CPU 插槽数、物理核数、逻辑处理器数
依赖:psutil(必须),wmi(可选,用于获取插槽数)
pip install psutil
可选:pip install wmi
"""
import ctypes
import psutil
# 可选:尝试用 wmi 获取插槽数(物理处理器数量)
try:
import wmi
sockets = len(wmi.WMI().Win32_Processor())
except Exception:
sockets = None # 未安装 wmi 或查询失败时显示 N/A
# 使用 kernel32 获取所有处理器组的活动逻辑处理器数
k32 = ctypes.windll.kernel32
k32.GetActiveProcessorCount.argtypes = (ctypes.c_uint,)
k32.GetActiveProcessorCount.restype = ctypes.c_uint
ALL_PROCESSOR_GROUPS = 0xFFFF
physical_cores = psutil.cpu_count(logical=False) or 0
logical_processors = k32.GetActiveProcessorCount(ALL_PROCESSOR_GROUPS)
print("物理CPU(插槽)数:", sockets if sockets is not None else "N/A (可安装 wmi 获取)")
print("物理核数:", physical_cores)
print("逻辑处理器数:", logical_processors)
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。