我有一个corei7 intel处理器(CPU名称:intel(R)Core(TM)i7-4500U CPU@1.80GHz,CPU类型:intel Core Haswell处理器)。我想知道CPUID命令的输出,因为它显示了4个cpu,每个cpu有2个内核!我真的有4个CPU吗?输出包括4个cpu(cpu0到cpu3)(multi-processing synth): multi-core (c=2), hyper-threaded (t=2)
这是因为我想使用硬件性能计数器来测试我的应用程序。然而,我对我必须监控和配置的内核数量感到困惑。
您的Intel i7 4500U是一款支持"超线程"的双核CPU,因此您可以看到4核。
这个U代表ultra-book,所以这是一款CPU,专为超薄ultra-bbook设计,电池寿命长。
首先,如前所述,您的系统是一个具有超线程的双核(超线程意味着每个内核可以从两个同时执行的硬件线程执行)。因此,即使只有一个"物理CPU",操作系统也可以看到4个"逻辑CPU"。阅读下面的更多信息:
如果您在linux上,请查看使用cat或更少的/proc/cpuinfo,如下所示:
cat /proc/cpuinfo
这将列出你需要知道的所有信息。然而,为了回答您的问题并理解信息。您需要知道"逻辑cpu"one_answers"物理cpu"之间有区别。物理CPU是由英特尔制造的实际硬件,例如安装在您的系统中。逻辑CPU是操作系统所看到的,基本上指的是"硬件线程"或一个处理器核心。因此,假设您有一个具有4个核心的物理CPU,每个核心支持一个线程(硬件线程),那么您的操作系统将看到4个CPU,这些CPU将在/proc/cpuinfo中列出,它们具有不同的"处理器"编号,但具有相同的"物理id",因为它们都属于同一个物理处理器。另一个例子,假设上面的每个核心都支持两个线程(同样,硬件线程,而不是软件线程)。然后,您的操作系统将看到8个CPU。如果您有带有两个物理cpu的双套接字(多节点)服务器以及以上所有内容,那么您的操作系统将看到16个CPU;它们中的每8个都将具有相同的"物理id"。
有关您的系统的信息如下:http://ark.intel.com/products/75460/Intel-Core-i7-4500U-Processor-4M-Cache-up-to-3_00-GHz