4

Мой процессор имеет 2 ядра, поэтому я вижу две части в /proc/cpuinfo .

Но я хочу знать, будут ли процессоры, поддерживающие Hyper-Threading (или аналогичную технологию), предоставлять /proc/cpuinfo информацию о ЦП для каждого ядра или для каждого потока (или называть его родственным)?

Я знаю только, что диспетчер задач Windows выдаст статистику использования ЦП для каждого потока, если ЦП поддерживает HT.

2 ответа2

5

Содержимое /proc/cpuinfo содержит информацию для всех процессоров вплоть до виртуального уровня.

Вот несколько советов по интерпретации содержания:

  • Каждый физический процессор будет представлен как минимум один процессор
  • Каждое ядро будет представлено как минимум одним процессором
  • Каждая гиперпотока будет представлена как один процессор.

Таким образом, двухъядерная, двухъядерная, многопоточная система будет отображаться как 8 процессоров. Аналогичная четырехъядерная система покажет как 16 процессоров.

В содержимом /proc/cpuinfo каждый логический процессор имеет свой собственный идентификатор. Если ваша система SMP, то у нее также будет physical id . Это, естественно, номер физического процессора. Если у вас многоядерный процессор, то каждый логический процессор также будет иметь core id . Идентификаторы ядра уникальны только в пределах одного процессора. То есть физический 0 будет иметь ядро 0 и ядро 1, а физический 1 также будет иметь ядро 0 и ядро 1.

3

Hyper Threading появится в /proc /cpuinfo как отдельные процессоры. Таким образом, если в вашем процессоре есть 2 ядра, каждое с включенной гиперпоточностью, то /proc /cpuinfo покажет 4 процессора.

Следовательно, когда вы описываете свою конфигурацию, гиперпоточность либо недоступна, либо не включена в BIOS.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .