Как выключить smt на ryzen
990x.top
Простой компьютерный блог для души)
SMT Mode — что это в биосе?
Приветствую. Сегодня я постараюсь простыми словами рассказать про одну функцию, которая позволяет повысить производительность процессора. Она давно уже существует в процах Intel и только относительно недавно появилась у AMD.
SMT Mode — что это такое?
Режим, при котором одно физическое ядро процессора представляется в виде двух виртуальных ядер, которые обрабатывают два потока данных вместо одного.
Другими словами это технология многопоточности, при включении которой производительность процессора повышается, потому что удается загрузить процессор по полной.
Для примера — посмотрите некоторые характеристики процессоров 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):

Процессору Ryzen 9 3900X отключили SMT и проверили, как это скажется на производительности
В играх это даже полезно
Линейка процессоров Ryzen 3000 сейчас насчитывает шесть моделей, одна из которых выйдет только в сентябре. Всех их объединяет одна особенность — поддержка SMT (аналог Hyper-Threading).
Появятся ли позже модели без поддержки SMT, неясно, но специалисты ресурса TechSpot решили проверить, какова будет производительность в этом случае. Для своего эксперимента они взяли CPU Ryzen 9 3900X и отключили у него поддержку SMT, сравнив при этом как с нормальной версией, так и с Core i9-9900K.
Тестировались процессоры исключительно в играх, потому что в целом сам тест был сделан с подачи читателей, которые попросили провести такое вот сравнение.
Игр было много, так что мы приведём лишь итоговые результаты.

Как можно видеть, в большинстве игр действительно отключение SMT позволяет Ryzen 9 3900X выступать лучше. Но, во-первых, не во всех, а во-вторых, зачастую разница составляет всего несколько процентов, что совершенно некритично.
Таким образом, можно предположить, что, если какие-то модели линейки Ryzen 3000 не будут иметь поддержки SMT, в играх от этого как минимум хуже не станет.
Что такое 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 можно прочитать в моей предыдущей статье
Большое спасибо всем, кто дочитал до конца.
О влиянии числа ядер AMD Ryzen и SMT на игры и приложения
Как отключить SMT для процессоров AMD Ryzen?
Сделать это можно только одним способом — в настройках BIOS. В этой статье процесс настройки параметра будет показан для материнской платы компании MSI, однако для других плат порядок действий похож. Перезагрузите компьютер, нажмите клавишу Del или F2 (в зависимости о материнской платы) на старте. Загрузится программа настройки BIOS. Выберите пункт меню OC (Overclocking), затем пункт Параметры процессора (CPU Settings):
В открывшемся окне найдите опцию Simultaneous Multithreading и замените значение АВТО на Выключено:
Выйдите из программы настройки BIOS, сохранив изменения.
Если искомый параметр не получается найти, воспользуйтесь поиском в настройках BIOS. Кнопка поиска обычно находится в верхнем правом углу. Просто наберите в строке поиска «SMT» или «Sim», выберите появившийся в списке найденного пункт Simultaneous Multithreading и точно так же измените значение АВТО на Выключено.
Для того, чтобы включить SMT, достаточно изменить значение параметра Выключено на АВТО.
Что такое SMT 2? Описание и свойства продукта
Торговая марка SMT 2 принадлежит американской компании Hi Gear.
На официальной страничке этого продукта он описан как полностью синтетический, негорючий, коррозионно-неактивный, нетоксичный, биоразлагаемый антифрикционный кондиционер металла. Он предназначен для использования в качестве присадки к моторным, трансмиссионным, редукторным маслам, топливу и смазочно-охлаждающим жидкостям.
SMT 2 не содержит фторполимеров, графита, черных и цветных металлов, керамики, сложных эфиров. Именно поэтому присадка не меняет свойств смазочного материала, в который вводится, безвредна для деталей и окружающей среды.
Кондиционер металла совместим со всеми известными маслами и спецжидкостями. По сути он представляет собой хлорпарафин – вещество, получаемое путем глубокой переработки нефти. Присадка не горюча, не имеет запаха, соответствует классу опасности 4 (малотоксичные вещества).
Производитель SMT 2 заявляет, что присадка:
Как влияет SMT на производительность?
Мы протестировали уровень производительности процессора AMD Ryzen 5 2600X с включённой многопоточностью и без неё в Cinebench и получили следующий результат:
Без SMT в однопоточном тесте (Single Core) процессор получил 169 баллов:
С включённой многопоточностью — 939 баллов:
С включённым SMT процессор получил 172 балла в однопоточном тесте:
В многопоточном — 1332 балла:
Как видите, мы не получаем прироста уровня производительности для одного ядра, но зато теряем около 30% производительности в многопоточном режиме.
Механизм действия присадки
В состав SMT 2 входит ноу-хау компании Hi Gear – компонент TPF. Его название – это аббревиатура трех английских слов: temperature (температура), pressure (давление) и friction (трение).
При повышении температуры, давления и трения в зоне контакта между движущимися поверхностями запускается последовательные химические реакции SMT-кондиционирования.
В ходе этого процесса TPF взаимодействует с ионами железа, которые присутствуют на поверхностях деталей, и продуктами их износа. Образуется многослойная защитная пленка, характеризующаяся высокой молекулярной прочностью и очень низкий коэффициентом трения.
Особенностью этой пленки является наличие пор, которые задерживают смазку. Пористая структура делает возможной деформацию защитного слоя при его излишней толщине. Например, если при температурном расширении образованное присадкой покрытие станет избыточным, оно просто деформируется. Заклинивания подвижной пары при этом не произойдет.
Выводы
Для новых процессоров AMD уже не советовала отключать SMT. Кроме того, из теста в Cinnebench мы видим, что прирост производительности от этого не такой и большой, как могло бы быть. Отключать или нет — решать вам, но нам кажется, что, скорее всего, не стоит.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
(6 оценок, среднее: 5,00 из 5)
Об авторе
admin
Администратор te4h.ru, интересуюсь новыми технологиями, криптовалютой, искусственным интеллектом, свободным программным обеспечением и Linux.
При выключенном smt комп не грузится, приходится забрасывать биос. Какая может быть причина? Ryzen 3700x + MSI MPG X570 gaming plus
Автор, не надо спать во время написания статьи. Если производительность в CineBench: SMT- : SC:169, MC:939 SMT+: SC:172, MC:1332 (SC — Single Core, MC — MultiCore)
SATA Configuration
Другие идентичные по значению опции: Onboard IDE Operate Mode, ATA/IDE Configuration.
Среди опций BIOS, предназначенных для настройки параметров жестких дисков, можно порой встретить функцию SATA Configuration. Она предназначена для настройки параметров работы контроллера SATA/IDE в различных операционных системах. Обычными вариантами опции являются варианты Enhanced (Расширенный режим), Compatible (Совместимый режим) и Disabled (Выключено). Иногда вместо вариантов Enhanced и Compatible можно встретить варианты Normal (Нормальный) и Legacy (Совместимость с устаревшими операционными системами), однако по назначению они идентичны соответственно вариантам Enhanced и Compatible.
Принцип работы
SATA – это новая технология интерфейса внутренних накопителей персонального компьютера, пришедшая на смену технологии интерфейса ATA (Advanced Technology Attachment), часто также называемого интерфейсом IDE (Integrated Drive Electronics). Большинство материнских плат современных компьютеров оснащено именно интерфейсом SATA. Аббревиатура SATA образована добавлением к аббревиатуре ATA буквы S, которая обозначает Serial, то есть, «последовательный». Таким образом, SATA – это последовательный вариант интерфейса ATA.
Из этого следует, что интерфейс SATA не отказывается от всех преимуществ интерфейса ATA, а лишь является его усовершенствованием. В частности, интерфейс SATA позволил значительно увеличить скорость передачи данных между материнской платой и жестким диском (до 6 Гб/c в версии SATA 3.0). Во многом это было достигнуто за счет преобразования интерфейса из параллельного в последовательный.
Параллельный кабель IDE имеет 16 линий данных, не считая служебных линий данных, и всего в кабеле насчитывается 40 проводников (80 в кабеле для устройств, поддерживающих UDMA-66). В отличие от кабеля IDE, кабель SATA имеет всего две линии данных. Тем не менее, именно это обстоятельство, из-за низкой помехоустойчивости сигналов в кабеле IDE, накладывает ограничение на максимальную длину этого кабеля (которая может составлять не более полуметра), а также на скорость передачи данных по кабелю.
Также существенным нововведением интерфейса SATA стала возможность «горячего» (без выключения компьютера) подключения устройств (при помощи технологии AHCI (Advanced Host Controller Interface)).
Кроме того, что немаловажно, интерфейс SATA позволяет разместить на материнской плате больше разъемов для подключения жестких дисков или других накопителей. Большинство материнских плат, поддерживающих лишь интерфейс IDE, могло иметь всего лишь по два разъема IDE.
К каждому из этих разъемов мог подключаться один кабель, а к каждому кабелю – не более двух жестких дисков (или прочих накопителей) IDE. Данные диски обозначаются как Master (Основной) и Slave (Ведомый).
Однако в отличие от IDE интерфейс SATA поддерживает не больше одного устройства на разъем, что позволяет избежать потенциальных проблем, связанных с негативным взаимодействием между устройствами, расположенными на одном кабеле.
Это ограничение на максимальное число накопителей, существовавшее во времена господства IDE, нашло отражение и в операционных системах того времени. Старые ОС линейки Windows, до Windows Millenium включительно, могли использовать не более 4 устройств IDE, расположенных на двух разъемах. С появлением интерфейса SATA стало возможным размещать на материнской плате большее число разъемов, и, как следствие, пользователь получил возможность установить большее количество жестких дисков. Но старые операционные системы линейки Windows не способны видеть эти диски.
Опция SATA Configuration предназначена, прежде всего, для исправления данного недостатка старых ОС. Если пользователь выберет значение опции Compatible, то это позволит старым операционным системам видеть диски, установленные на разъемах SATA. В противном случае, если установить вариант Enhanced, в этих ОС возможна ошибка в определении количества жестких дисков.
Кроме того, в опции есть вариант Disabled, который позволяет вообще отключить контроллер IDE/SATA.
Какое значение выбрать?
Ответ на этот вопрос зависит от того, какая операционная система установлена у вас на компьютере. Если это операционная система Windows Me, Windows 95/98 и более старая, то необходимо установить значение Compatible (Legacy). В противном случае ОС не сможет определить диски SATA или определит их неправильно.
Если же у вас установлена современная операционная система линейки Windows, такая, как Windows 2000, Windows XP, Windows Vista, Windows 7 или Windows 8, то рекомендуется установить значение Enhanced (Native). В этом случае данные операционные системы смогут работать с любым количеством дисков SATA.
В то же время включение значения Compatible (Legacy) приведет к тому, что в современных ОС будут видны только 2 канала IDE, и, как следствие, максимальное количество доступных дисков будет равно 4. Однако может случиться такая ситуация, когда у пользователя на одном компьютере, имеющим несколько дисков SATA, установлена ОС типа Windows 95/Windows Millenium и современная ОС Windows.
В таком случае лучше всего установить значение Compatible, чтобы диски SATA были бы доступны в обеих операционных системах.
История и реализации [ править | править код ]
Исследование производительности многопоточности на Zen 3 и AMD Ryzen 5000
Одна из историй о первых поколениях процессоров Zen от AMD связана с влиянием одновременной многопоточности (SMT) на производительность. Запустив этот режим, который используется по умолчанию в большинстве ситуаций, пользователи заметили значительное повышение производительности в ситуациях, которыми можно было воспользоваться. Причины такого повышения производительности основаны на двух конкурирующих факторах: во-первых, почему ядро спроектировано таким образом, чтобы оно не использовалось одним потоком, или, во-вторых, построение эффективной стратегии SMT для повышения производительности. В этом обзоре мы рассмотрим последнюю архитектуру AMD Zen 3, чтобы оценить преимущества SMT.
Что такое одновременная многопоточность (SMT)?
Мы часто рассматриваем каждое ядро ЦП как способное обрабатывать один поток последовательных инструкций для любой запущенной программы. Одновременная многопоточность, или SMT, позволяет процессору запускать два параллельных потока инструкций на одном и том же ядре процессора, разделяя ресурсы и оптимизируя возможное время простоя на одном наборе инструкций за счет наличия вторичного набора, который будет входить и использовать преимущества недоиспользования. Двумя ограничивающими факторами в большинстве моделей вычислений являются либо задержка вычислений, либо задержка памяти, и SMT предназначен для чередования наборов инструкций для оптимизации пропускной способности вычислений при сокрытии задержки памяти.
Старый слайд от Intel, у которого есть собственный маркетинговый термин для SMT: Hyper-Threading.
Когда SMT включен, в зависимости от процессора, он позволяет запускать два, четыре или восемь потоков на этом ядре (мы видели некоторые эзотерические решения для вычислений в памяти с 24 потоками на ядро). Инструкции из любого потока перестраиваются для обработки в одном и том же цикле и позволяют поддерживать высокий уровень использования основных ресурсов. Поскольку используется несколько потоков, это называется извлечением параллелизма на уровне потоков (TLP) из рабочей нагрузки, тогда как один поток с инструкциями, которые могут выполняться одновременно, является параллелизмом на уровне инструкций (ILP).
SMT — это хорошо?
Это зависит от того, кого вы спрашиваете.
SMT2 (два потока на ядро) включает создание структур ядра, достаточных для хранения и управления двумя потоками инструкций, а также управление распределением ресурсов этими структурами ядра. Например, если один конкретный буфер в вашем основном проекте предназначен для обработки до 64 инструкций в очереди, если среднее значение ниже, чем это (например, 40), тогда буфер используется недостаточно, и проект SMT будет включать буфер подается в среднем наверх. Этот буфер может быть увеличен до 96 инструкций в проекте, чтобы учесть это, гарантируя, что если оба потока инструкций работают на «среднем уровне», то у обоих будет достаточный запас. Это означает, что стоит использовать два потока, что всего в 1,5 раза превышает размер буфера. Если все остальное сработает, то производительность будет вдвое выше, чем при проектировании ядра в два раза. Но в режиме ST, где большая часть этого 96-разрядного буфера заполнена менее чем на 40%, поскольку весь буфер должен быть постоянно включен, он может тратить энергию.
Но если ядро выигрывает от SMT, то, возможно, ядро изначально не было спроектировано оптимально для одного потока производительности. Если включение SMT дает пользователю точную двойную производительность и идеальное масштабирование по всем направлениям, как если бы было два ядра, то, возможно, существует прямая проблема с тем, как спроектировано ядро, от исполнительных блоков до буферов и иерархии кешей. Известно, что пользователи жалуются, что они получают прирост производительности только на 5-10% с включенным SMT, заявляя, что он не работает должным образом — это может быть просто потому, что ядро лучше спроектировано для ST. Точно так же утверждение, что прирост производительности на +70% означает, что SMT работает хорошо, может быть скорее сигналом для несбалансированной конструкции ядра, которая тратит энергию.
Это дихотомия одновременной многопоточности. Если он работает хорошо, пользователь получает дополнительную производительность. Но если он работает слишком хорошо, возможно, это указывает на то, что ядро не подходит для конкретной рабочей нагрузки. Ответ на вопрос: «SMT — это хорошо?» все сложнее, чем кажется на первый взгляд.
Мы можем разделить системы, использующие SMT:
По сравнению с другими:
(Обратите внимание, что Intel называет свою реализацию SMT «HyperThreading», что является маркетинговым термином специально для Intel).
Существует четкая тенденция между системами с поддержкой SMT и системами без SMT, и это, похоже, является признаком высокой производительности. Единственное исключение — недавний процессор Apple M1 и ядра Firestorm.










