Saya selalu menggunakan yang berikut ini dan melihat 'Utas per inti:'.
hostname:~ # lscpu
Architecture: x86_64
CPU(s): 24
Thread(s) per core: 2 <-- here
Core(s) per socket: 6
CPU socket(s): 2
NUMA node(s): 2
Vendor ID: GenuineIntel
CPU family: 6
Model: 44
Stepping: 2
CPU MHz: 1596.000
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 12288K
Perhatikan, bagaimanapun, teknik ini akan gagal jika ada prosesor logis yang telah dimatikan dengan sederhana
echo 0 > /sys/devices/system/cpu/cpuX/online
Catatan ditambahkan pada 8 Juli 2014: Seperti yang ditunjukkan Riccardo Murri, jawaban saya di bawah ini hanya menunjukkan apakah laporan prosesor mendukung hyperthreading. Umumnya, *nix O/S dikonfigurasikan untuk mengaktifkan hyperthreading jika didukung. Namun, untuk benar-benar memeriksa ini secara terprogram, lihat misalnya jawaban Nils!
---- Jawaban asli dari 25 Maret 2012:
Anda memang berada di jalur yang benar :) dengan
dmidecode -t processor | grep HTT
Di Linux, saya biasanya hanya mencari "ht" pada baris "flags" dari /proc/cpuinfo
. Lihat misalnya
grep '^flags\b' /proc/cpuinfo | tail -1
atau jika Anda ingin memasukkan "ht" ke dalam pola
grep -o '^flags\b.*: .*\bht\b' /proc/cpuinfo | tail -1
(\b
cocok dengan batas kata dan membantu menghindari positif palsu jika "ht" adalah bagian dari flag lain.)
Jika jumlah prosesor logis dua kali jumlah inti yang Anda miliki HT.Gunakan skrip berikut untuk mendekode /proc/cpuinfo :
#!/bin/sh
CPUFILE=/proc/cpuinfo
test -f $CPUFILE || exit 1
NUMPHY=`grep "physical id" $CPUFILE | sort -u | wc -l`
NUMLOG=`grep "processor" $CPUFILE | wc -l`
if [ $NUMPHY -eq 1 ]
then
echo This system has one physical CPU,
else
echo This system has $NUMPHY physical CPUs,
fi
if [ $NUMLOG -gt 1 ]
then
echo and $NUMLOG logical CPUs.
NUMCORE=`grep "core id" $CPUFILE | sort -u | wc -l`
if [ $NUMCORE -gt 1 ]
then
echo For every physical CPU there are $NUMCORE cores.
fi
else
echo and one logical CPU.
fi
echo -n The CPU is a `grep "model name" $CPUFILE | sort -u | cut -d : -f 2-`
echo " with`grep "cache size" $CPUFILE | sort -u | cut -d : -f 2-` cache"