如何检查 Linux 中是否启用了 Intel 超线程如何检查 Linux 中是否启用了 Intel 超线程如何检查 Linux 中是否启用了 Intel 超线程如何检查 Linux 中是否启用了 Intel 超线程
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何检查 Linux 中是否启用了 Intel 超线程

超线程是 Intel 的同步多线程 (SMT) 技术,旨在提高 x86 CPU 处理器的执行并行性。启用超线程后,每个物理核心都表示为两个“逻辑处理器”,每个逻辑处理器都可以同时执行作业,同时共享物理核心的资源。当一个逻辑处理器停止或中断时,同一核心上的另一个逻辑处理器可以从停止的处理器窃取资源。因此,超线程有望提高整体 CPU 吞吐量,对于涉及 CPU 和 I/O 密集型工作负载混合的多线程应用程序尤其有用,例如视频编码、3D 渲染、游戏等。

如果您想检查您的 Linux 系统上是否启用了超线程,有多种方法可以实现。

方法一:BIOS设置

超线程是 CPU 处理器的一项功能。因此,通常您需要使用 BIOS 设置来检查是否启用了超线程。 BIOS 菜单因系统而异,超线程设置通常位于“高级”、“处理器”或“性能”相关设置下。例如,Dell XPS 13 BIOS 中的超线程控制如下所示。

方法二:lscpu

假设由于某种原因(例如,由于远程访问)您无法访问系统的 BIOS 菜单。在这种情况下,您可以利用 lscpu 命令来显示有关系统 CPU 架构的信息。特别是,在其输出中查找Thread(s) per core 条目。如果此条目显示“1”,则表示每个核心只有一个线程可用。因此超线程被禁用。如果显示“2”,则表示超线程已启用。

因此,只需使用以下命令来检查状态即可。


$ lscpu | grep Thread

方法三:/sys/devices/system/cpu/smt/active

从命令行检查超线程状态的另一种方法是访问位于 /sys/devices/system/cpu/smt/active 的伪文件。如果启用超线程,则此文件的内容将为 1(或 on),否则为 0(或 off)。


$ cat /sys/devices/system/cpu/smt/active

方法四:dmidecode

您还可以使用 dmidecode 命令行工具检查是否启用了超线程。使用 -tprocessor 运行它,并比较输出中的“Core Count”和“Thread Count”。如果这两个计数相同,则表示超线程未启用。如果“Thread Count”是“Core Count”的两倍,则表示启用了超线程。


$ sudo dmidecode -t processor | grep Count
©2015-2025 艾丽卡 support@alaica.com