- 990x.top
- Простой компьютерный блог для души)
- SMT Mode — что это в биосе?
- SMT Mode — что это такое?
- SMT Mode — включать или нет?
- Что такое SMT и как оно работает в приложениях — плюсы и минусы
- Что значит SMT?
- Что означает SMT?
- Что будет если отключить SMT?
- Как работает SMT?
- Для чего применяют смт?
- Что лечат Амплипульсом?
- Как отключить Hyper Threading?
- Как отключить автоматический разгон процессора?
- Как расшифровывается смт?
- Как называется Гипертрейдинг у Амд?
- Что такое PSS Support?
990x.top
Простой компьютерный блог для души)
SMT Mode — что это в биосе?
Приветствую. Сегодня я постараюсь простыми словами рассказать про одну функцию, которая позволяет повысить производительность процессора. Она давно уже существует в процах Intel и только относительно недавно появилась у AMD.
SMT Mode — что это такое?
Режим, при котором одно физическое ядро процессора представляется в виде двух виртуальных ядер, которые обрабатывают два потока данных вместо одного.
- Для эффективной работы необходима не только поддержка SMT на аппаратном уровне, но и поддержка операционкой и софтом.
- При выставлении Activated могут быть проблемы с платой, поэтому лучше ставить Auto, тогда SMT все равно будет работать, но проблемы с платой будут минимизированы.
- По факту — 2 потока на ядро, как в технологии Intel Hyper-Threading. 1 поток слабее чем 1 ядро. Но 2 потока могут дать больше производительности, чем 1 ядро. Такие потоки Windows воспринимает как реальные ядра.
Другими словами это технология многопоточности, при включении которой производительность процессора повышается, потому что удается загрузить процессор по полной.
Для примера — посмотрите некоторые характеристики процессоров Ryzen, где видим, на одно ядро приходится два потока:
Потоки можно отключить, но тогда упадет производительность, правда и греться процессор будет меньше.
И опция SMT Mode именно активирует работу этих потоков. Нет смысла ее отключать.
SMT Mode — включать или нет?
При использовании последнего билда Windows 10, современных игр, последних драйверов, если у вас процессор Ryzen не первого поколения, а последнего — то в большинстве случаев отключение потоков снизит производительность. Сегодня многие баги связанные с многопоточностью уже устранили.
В интернете есть информация, что SMT стоит отключать для игр, в итоге повышается FPS. С чем связано? Смотрите, 6 ядер процессора — это 6 настоящих ядер, полноценных. Быстрых. А 12 потоков — это уже не полноценные ядра, могут выполнять больше работы, но не быстрее, потому что каждый такой поток работает медленнее одного ядра. Но суммарно 12 потоков смогут за одно время выполнить больше работы, чем 6 ядер и это при условии что софт оптимизирован под многопоточность. Но многим играм и правда достаточно 6 настоящих ядер (особенно если высокая частота), чем 12 потоков. Но повторюсь — все зависит от игры и от ее оптимизации.
Если игра оптимизирована под многопоточность, то отключение потоков только снизит FPS.
Кстати, что интересно.. у процессоров AMD FX по сути тоже присутствуют потоки. Хоть компания и представила их как 8-ядерные, там по сути 4 ядра и 8 потоков. Но отключить там потоки нельзя.
Когда только вышел Ryzen, то отключение потоков дало плюс в производительности. Но это было раньше. Сейчас уже все оптимизировали, в том числе и планировщик Windows.
Но при разгоне процессора SMT Mode стоит отключать.
Название раздела BIOS содержащий функцию зависит от производителя. Например на плате ASUS Prime X370 Pro функция SMT расположена здесь:
И имеет два варианта значений — Auto/Disabled. В тоже время на плате AsRock B450 Pro4 функция расположена здесь:
OC Tweaker/CPU Configuration
Значения опции — Enabled/Disabled.
Чтобы проверить отключена ли опция или нет, советую использовать CPU-Z — смотрим сколько ядер (Cores) и сколько потоков (Threads):
Утилита бесплатная, маленькая, не грузит ПК, поэтому советую. Можно скачать с офф сайта.
Если SMT Mode отключено — количество потоков будет равно количеству ядер.
Настройка в материнке MSI (раздел Overclocking\Параметры CPU):
Как видите, название может быть или SMT или Simultaneous Multi-Threading, все зависит от производителя/модели материнки.
Источник
Что такое SMT и как оно работает в приложениях — плюсы и минусы
Пока я радую свои графоманские пристрастия написанием детальной технической статьи про «Windows Performance Station», захотелось поделиться своими мыслями о том, что хорошего и плохого приносит SMT в процессоры «AMD» и «Intel», и как тут поможет «Windows Performance Station».
Тем, кому интересна данная тема, добро пожаловать под кат…
Итак, для начала давайте определимся, что такое SMT.
Как говорит нам википедия, SMT (от англ. simultaneous multithreading) это одновременная многопоточность, т.е. несколько потоков выполняются одновременно, а не последовательно, как это происходит во «временно́й многопоточности».
Многие знают эту технологию под названием «Intel Hyper-Threading», про неё уже всё давно написано, но до сих пор я сталкиваюсь с тем что многие разработчики, и, тем более, обыватели не понимают в чём основная суть «одновременного» выполнения нескольких команд одним ядром процессора и какие проблемы это несёт.
Для начала поговорим про временну́ю многопоточность. До реализации технологии SMT в виде «Hyper-Threading» использовалась технология «временно́й многопоточности».
Тут всё просто, представим, что у нас есть один конвейер и один рабочий (Ядро ЦП), который выполняет операции над числами и записывает результат. Предположим, для этих операций ему нужна отвёртка и гаечный ключ. Операционная система (ОС) складывает нашему рабочему на конвейер по порядку одну операцию для отвёртки, а за ней одну операцию для гаечного ключа. Один рабочий в один момент времени может оперировать или только гаечным ключом или только отвёрткой. Таким образом, выкладывая разное количество разных блоков, ОС определяет приоритет выполнения тех или иных операций от разных приложений. Пропорцию одних блоков к другим мы можем указывать внутри ОС, когда указываем приоритет процесса. Именно это и делают все диспетчеры задач в т.ч. и «Windows Performance Station». Это приоритизирование распространяется далее на механизмы SMT и всю работу с конвейерами.
С появлением SMT ситуация становится чуть сложнее.
Представим конвейер и двух рабочих, у которых есть одна отвёртка и один гаечный ключ на двоих. При этом, каждый из них может оперировать либо только отвёрткой, либо только гаечным ключом. Один конвейер условно делится на две половинки вдоль. SMT позволяет сложить на такой конвейер сразу два числа, одно для работы с отвёрткой, а второе для работы с гаечным ключом, поэтому действия этих рабочих выглядят так:
— Первый рабочий получает операцию для отвёртки, а второй, стоящий напротив, в тот же момент времени, операцию для гаечного ключа, после чего оба записывают результат.
Исходя из этого, когда на конвейере находится операция (A и B) с одной стороны и (D и E) с другой стороны — всё отлично, но при распараллеливании цепочки вычислений могут получиться две проблемы:
1. С одной стороны конвейера оказалось действие (A и B) = С, а с другой (D и E) = C,
т.е. нужно записать сначала одно значение C, а потом второе значение C, но не одновременно (конфликт по управлению).
2. С одной стороны конвейера оказалось действие (A и B) = C, а с другой (A и C) = D,
т.е. нужно сначала посчитать C, а потом посчитать D, но не одновременно (конфликт по данным).
Оба конфликта вызывают задержку выполнения инструкций и решаются последовательным выполнением команд. Чтобы уменьшить такие задержки были введены элементы процессора под названием предсказатель переходов и кэш процессора.
Предсказатель переходов, как понятно из названия, осуществляет предсказание 🙂 Предсказывает он вероятность возникновения первой проблемы, когда разные преобразования должны произойти над одним числом.
В свою очередь, кэш процессора, необходим для быстрого решения второй проблемы, когда мы останавливаем решение выражения (A и C) = D и пишем в кэш результат выполнения (A и B) = C, после чего сразу вычисляем (A и C) = D.
Справедливости ради, стоит уточнить, что проблема распараллеливания конвейера появляется и у многоядерных процессоров без SMT, но у многоядерников не возникает момента простаивания процессора, когда на двоих рабочих одна отвёртка, т.к. в такой терминологии у каждого рабочего есть своя отвёртка и свой гаечный ключ.
Все эти пляски вокруг угадывания процессором того, как распараллелить текущие операции, приводят к серьёзным потерям энергии и к ощутимым фризам, когда происходит голодание разнотипных задач на ядрах с SMT.
Вообще, стоит держать в уме, что «Intel» разработала «Hyper-Threading» одновременно с созданием своих первых многоядерных процессоров «Xeon» и, по сути, эту технологию можно считать эдаким компромиссом когда ставится двойной конвейер на одно ядро.
С подачи маркетологов принято нахваливать то, как хорошо одно ядро может выполнять несколько задач одновременно и как повышается производительность «в некоторых сценариях использования», однако про проблемы, присущие концепции SMT принято умалчивать.
Примечательно, что на сайте «Intel» в рекламном ролике показывается скорее двухядерность, нежели «Hyper-Threading», тот кто дочитал до этого момента, наверняка уже догадался почему 🙂
Изображение из видео:
Более точное изображение:
Какой вывод можно здесь сделать и что улучшить?
Особенность отображения загрузки логических ядер в ОС Windows вводит путаницу об информации реальной загруженности ядер с SMT. Если Вы видите, что два соседних ядера заняты
50% это может означать две вещи:
1) оба ядра выполняют два параллельных расчёта и загружены на 50% (тут всё ок).
2) оба ядра выполняют один рассчёт попеременно (как если бы два рабочих через такт передавали друг-другу гаечный ключ).
Поэтому, если Вы видите, что все ядра Вашего процессора с SMT загружены на 50% и выше нагрузка не поднимается, скорее всего это значит, что утилизация процессора составляет 100% но он занят однотипной задачей, которую не может разделить для выполнения на SMT!
Вместе с очевидными плюсами, SMT приносит фризы в чувствительные для времени выполнения задачи (воспроизведение видео/музыки или FPS в играх). Именно поэтому, многие геймеры наблюдают падение FPS при включенном SMT/Hyper-Threading.
Как я и написал ранее, приложение «Windows Performance Station» может сортировать блоки, выкладываемые на конвейер, ещё на этапе обработки задач ядром ОС. С помощью приоритетов и разделения процессов по ядрам процессора, можно выкладывать определённые блоки на конвейер в нужном количестве и класть разнотипные блоки для разных виртуальных ядер, чтобы не наступало голодание разнотипных задач. Именно для этой задачи динамического анализа в «Windows Performance Station» мы объединили нейросеть и диспетчер задач. В итоге, нейросеть анализирует задачу и раскладывает её в зависимости от полученных данных по разным правилам, благодаря чему, каждое ядро в паре SMT выполняет разные задачи.
Благодаря такому подходу, процессоры с SMT в Windows могут более эффективно работать с многозадачностью и многопоточными процессами. И именно поэтому нас весьма порадовало появление SMT в новых процессорах «AMD Ryzen».
Приложение «Windows Performance Station» бесплатное и не содержит рекламы, его можно скачать с нашего сайта по ссылке в спойлере:
Более подробно про Windows Performance Station можно прочитать в моей предыдущей статье
Большое спасибо всем, кто дочитал до конца.
Источник
Что значит SMT?
Что означает SMT?
Как говорит нам википедия, SMT (от англ. simultaneous multithreading) это одновременная многопоточность, т. е. несколько потоков выполняются одновременно, а не последовательно, как это происходит во «временно́й многопоточности».
Что будет если отключить SMT?
Если SMT Mode отключено — количество потоков будет равно количеству ядер. Настройка в материнке MSI (раздел Overclocking\Параметры CPU): Как видите, название может быть или SMT или Simultaneous Multi-Threading, все зависит от производителя/модели материнки.
Как работает SMT?
В переводе с английского SMT (Simultaneous MultiThreading) означает «одновременная многопоточность». Ее суть в том, что операционная система представляет каждое физическое ядро процессора в виде двух логических или виртуальных ядер, и направляет им на обработку два потока данных вместо одного.
Для чего применяют смт?
Механизм физиологического воздействия
Обезболивающему действию СМТ способствует улучшение кровоснабжения и уменьшение венозного застоя, ишемии, отечности тканей. Применение СМТ ведет к нормализации центральной и периферической гемодинамики, кровоснабжению тканей, тонусу мозговых, спинальных и периферических артерий.
Что лечат Амплипульсом?
Амплипульстерапия — это амплитудная пульсация низкочастотных модульных токов, которая используется при различных заболеваниях опорно-двигательной, нервной, мочеполовой систем и других. Данная методика применяется достаточно долгое время и может быть назначена для лечения суставов и спины.
Как отключить Hyper Threading?
Как отключить функцию Hyper—Threading
- Откройте браузер Chrome .
- Рядом с пунктом Scheduler Configuration (Конфигурация планировщика) выберите Disables Hyper—Threading on relevant CPUs (Отключает функцию Hyper—Threading на подходящих процессорах).
- Нажмите Restart (Перезапустить).
Как отключить автоматический разгон процессора?
Чтобы отключить разгон процессора, нужно просто вернуть настройки системы в первоначальное, «заводское» состояние. Это можно сделать следующими способами: Установить в BIOS значения частоты FSB, коэффициента умножения, а также питающих напряжений в режим автоматического определения (Опции «Auto» или «Default»).
Как расшифровывается смт?
Физиотерапия СМТ – метод, основанный на свойствах синусоидальных модулированных токов. Амплипульстерапия (СМТ) – отечественный метод лечения электричеством, при котором переменные токи действуют в виде амплитудных пульсаций.
Как называется Гипертрейдинг у Амд?
hyper-threading — гиперпоточность, официальное название — hyper-threading technology, HTT или HT) — технология, разработанная компанией Intel для процессоров на микроархитектуре NetBurst.
Что такое PSS Support?
PSS Support — опция активирует работу энергосберегающих технологий. При разгоне нужно отключать. На офисных ПК отключать нет смысла.
Источник