Поиск по сайту

up
::>Процессоры >2018 > Simultaneous Multithreading (SMT) в топовом AMD Ryzen 7 2700X: тестирование в синтетике и играх

Simultaneous Multithreading (SMT) в топовом AMD Ryzen 7 2700X: тестирование в синтетике и играх

31-07-2018

Современные процессоры столь сложны, что эффективно задействовать одновременно все их узлы довольно сложно. Именно поэтому, стремясь повысить КПД, компания Intel уже давно представила технологию Hyper-Threading. У новых процессоров AMD Ryzen тоже реализован такой подход.

AMD Ryzen 7 2700X

Представьте, что вам нужно построить дом и у вас даже есть помощники, но каждый из них специалист в чем-то одном. Если вы будете работать строго поочередно, то процесс затянется на очень долго, поэтому лучше попробовать одновременно выполнять разные задачи, когда это возможно. Тот же принцип применим к процессорам: можно организовать параллельный поток обработки данных на простаивающих узлах.

В переводе с английского SMT (Simultaneous MultiThreading) означает «одновременная многопоточность». Ее суть в том, что операционная система представляет каждое физическое ядро процессора в виде двух логических или виртуальных ядер, и направляет им на обработку два потока данных вместо одного. Поскольку процессам приходится конкурировать за ресурсы одного ядра, то в теории его узлы полнее загружены работой и не простаивают, то есть повышается эффективность.

AMD Ryzen 7 2700X

Наибольшая сложность состоит в том, чтобы хорошо реализовать гибкую систему доступа потоков к вычислительным ресурсам ядра, и они не тормозили друг друга. Для этого в разных блоках микроархитектуры AMD Zen применяются 4 способа. Зеленые блоки используют квантование по времени, то есть отводят одинаковое время для каждого потока. Если система на основе внутреннего анализа выделяет какой-то из двух потоков в качестве приоритетного, то он первым получает доступ к синим блокам. Но один из двух потоков может быть исходно помечен как более приоритетный, в таком случае он первым получает доступ к бирюзовым блокам. Остальные узлы, раскрашенные красным, действуют по принципу «кто первым встал, того и тапки».

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

Кроме того, для эффективной работы недостаточно реализовать технологию SMT на аппаратном уровне процессора. Ее также должны поддерживать операционная система, драйверы и прикладные программы. Поэтому поначалу с AMD Zen было не все гладко в этом плане. Например, система могла по максимуму загрузить два потока одного ядра или половины ядер, в то время как остальные простаивали. Само собой, вместо прироста получалось замедление работы. За прошедший год ситуация в этом плане должна была заметно улучшиться, но так ли это на самом деле? Давайте проверим.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

В основе тестового стенда находится 8-ядерный флагман AMD Ryzen 7 2700X, который может работать в 16-поточном режиме. Он установлен на материнскую плату MSI X470 Gaming M7 AC и охлаждается СВО от be quiet!. Чтобы VRM материнской платы не перегревался и не снижал производительность системы, сверху мы положили вентилятор Noctua NF-A14 industrialPPC. Операционная система и требовательные к дисковой подсистеме игры были установлены на SSD серии GOODRAM Iridium PRO, остальные – на HDD от Seagate. Обработка графики была возложена на видеокарту MSI GeForce GTX 1070 Ti GAMING 8G с эффективным кулером. Все это добро было собрано на Thermaltake Core P5 TGE, а за питание отвечал блок серии Seasonic PRIME.

Тестовый стенд:

AMD Ryzen 7 2700X

Сразу же отметим, что мы решили зафиксировать частоту процессора на отметке 4 ГГц, чтобы технологии динамического разгона не влияли на результаты тестирования. А для повышения стабильности тактовой частоты вручную выключили опцию Spread Spectrum. Она позволяла тактовому генератору выдавать плавающую частоту, чтобы снизить электромагнитные наводки от компьютера на окружающее оборудование. Сама же технология SMT по умолчанию активна, но в BIOS ее можно отключить.

AMD Ryzen 7 2700X

Переходим к тестированию, и начнем его с нескольких синтетических бенчмарков. В архиваторе 7-ZIP преимущество от работы технологии SMT оценивается в 16-59%.

AMD Ryzen 7 2700X

Активация этой опции в WinRAR позволяет поднять общую скорость на 19%.

AMD Ryzen 7 2700X

Очень интересными получились результаты в CINEBENCH R15: производительность исключительно процессорной части повышается на 40% при использовании SMT. Зато в связке с видеокартой все наоборот – результаты улучшаются на 10% после ее деактивации.

AMD Ryzen 7 2700X

В тесте x265 HD Benchmark после выключения многопоточности время кодирования возросло на 12%, т.е. и в этой задаче от многопоточности есть некоторый прок.

AMD Ryzen 7 2700X

RealBench в целом положительно оценивает работу технологии SMT, но прирост зависит от конкретной задачи: при редактировании фото в GIMP, мультизадачном режиме и в тесте OpenCL бонус составил всего 2-3%. И лишь при кодировании видео показатель улучшился на 23%.

Как видим, в рабочих задачах в среднем бонус от использования SMT будет на уровне 18%, а в некоторых хорошо оптимизированных под многопоточность приложениях ускорение достигнет 40% и более. Пока все неплохо.

AMD Ryzen 7 2700X

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

Тест будем проводить в два этапа: сначала запустим бенчмарки в HD-разрешении, чтобы умышленно снизить нагрузку на видеокарту и лучше прочувствовать разницу; потом перейдем в Full HD, чтобы посмотреть, как это заметно при более реальных условиях.

AMD Ryzen 7 2700X

В основном для мониторинга будем использовать утилиту FPS Monitor. Она позволяет настраивать интерфейс и выводить не только процент загрузки процессора и видеокарты, но и полезную статистику. Например, показатели 1 и 0,1% Low, они же редкие и очень редкие события, корректнее отображают уровень комфорта в игре, чем минимальный FPS. Чем меньше между ними разница и чем они ближе к среднему FPS, тем плавнее видеоряд и комфортнее геймплей. И не обращайте внимания на температуру процессора – в данном случае она отображается некорректно.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

Начнем с престарелого движка Counter-Strike: Global Offensive. При автонастройках система выбрала очень высокие параметры и средний FPS был на 6% выше в системе с SMT. Видимо фоновые боты хорошо параллелятся. Зато статистика 1 и 0,1% Low была на 7-27% лучше при работе в 8-поточном режиме.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

Тот факт, что старые игры больше ценят производительность ядра, чем многопоточность, хорошо видно и на примере Far Cry Primal. Здесь уже фиксируем прирост по всем показателям на уровне 12-20%.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

Отключение SMT в Rainbow Six Siege также приносит позитивный эффект. И хотя мониторинг показывает неплохую балансировку задач между 16 логическими ядрами, все же в условиях отсутствия конкуренции за ресурсы бонус от производительности может достигать 35%.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

В теории DirectX 12 позволяет лучше распределять задачи между ядрами и эффективнее использовать ресурсы CPU, поэтому запустив Deus Ex: Mankind Divided в этом режиме при ультра пресете, мы ожидали увидеть преимущество за SMT, но по факту его не оказалось. Наоборот, работа в 8-поточном режиме обеспечила преимущество в 10-16%.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

В Hitman при том же API четкой тенденции не прослеживается: средний фреймрейт улучшается от выключения SMT на 2,5%, а показатель 1% Low на 10% ухудшается. В целом же статистика довольно похожая, поэтому в данном случае наличие или отсутствие SMT роли не играет.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

Еще более равная ситуация наблюдается в Assassin's Creed Origins при максимальных настройках: разница в показателях составляет 2-5% в пользу SMT, но на практике это 1-2 кадра/с, что вполне можно списать на погрешность измерения.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

И лишь Far Cry 5 демонстрирует заметный выигрыш от включения многопоточности на Ryzen 7 2700X, правда, только в одном показателе очень редких событий – прирост составляет 53%. По остальным разница не превышает 4%, что можно списать на погрешность измерения. 

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

Теперь переходим в Full HD. В бенчмарке World of Tanks Encore при ультра настройках на 11% улучшился показатель очень редких событий после выключения технологии SMT. Остальная статистика практически не изменилась.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

Нестареющая GTA V слабо оптимизирована под многопоточность в целом, поэтому для нее что 8 ядер, что 16 потоков – особой роли не играет, и разница в абсолютных показателях находится в пределах 1-4 FPS в пользу отключения SMT.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

Deus Ex: Mankind Divided и с увеличением разрешения показал лучшую производительность в случае использования 8 полноценных ядер вместо 16 потоков. Правда, это касается лишь показателя 1% Low, который поднялся на 21%. Разница между остальной статистикой особо не ощущается.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

Похожая ситуация наблюдается в Middle-earth: Shadow of War: лишь средний фреймрейт выигрывает от отключения SMT. Прирост составляет внушительные 22%. А вот статистика редких и очень редких событий находится практически на одинаковом уровне.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

Rise of the Tomb Raider – единственный бенчмарк, где для анализа мы использовали результаты встроенного счетчика. Польза от нового API ощущается лишь в последней, самой сложной сцене, и только по минимальному показателю FPS. В остальных случаях средняя скорость находится на приблизительно одинаковом уровне, а минимальная оказалась заметно выше при выключении SMT.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

По всей видимости, игре Ghost Recon Wildlands при очень высоких настройках вполне хватает и 8 ядер, поэтому пользы от включения SMT нет, наоборот, результаты снижаются на 2-4 FPS, что в целом можно списать на погрешность измерения.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

А вот The Division при максимальных настройках в режиме DirectX 12 по показателю очень редких событий отдает предпочтение 16-поточному процессору. Остальная статистика находится практически на одинаковом уровне.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

В Far Cry 5 при максимальных настройках нелегко определить победителя. Средняя частота у обеих систем одинаковая, а разница 1% и 0,1% Low находится в районе 3-5 FPS. Без мониторинга ощутить такой разрыв будет крайне сложно.

AMD Ryzen 7 2700X

AMD Ryzen 7 2700X

И, наконец, в Assassin's Creed Origins при максимальных настройках с натяжкой победу можно присудить системе с выключенной SMT. Самым значимым, как и в Far Cry 5, является перевес в 5 FPS по показателю редких событий, но ввиду невысоких абсолютных значений эти 5 FPS трансформируются в 11%, которые уже сложно списать на погрешность измерения.

Итоги

AMD Ryzen 7 2700X

Давайте подведем итоги. Если система используется в основном для работы, SMT лучше не трогать и оставить включенной: в оптимизированных под многопоточность задачах и приложениях она действительно обеспечивает заметный бонус в производительности. Это особенно хорошо видно в архиваторах и при кодировании видео.

AMD Ryzen 7 2700X

В играх ситуация меняется. В старых и плохо оптимизированных проектах будет больше пользы от отключения SMT. А вот в новых тяжелых играх, когда все упирается в видеокарту, разница находится в пределах погрешности или почти не ощущается. С другой стороны, все это справедливо для Ryzen 7 2700X, который даже без SMT предлагает пользователям 8 ядер. Возможно, в 4- и 6-ядерных моделях серии Ryzen 5 ситуация будет иная.

Автор: Сергей Будиловский

Статья прочитана раз(а)
Опубликовано : 31-07-2018
Подписаться на наши каналы
telegram YouTube facebook Instagram