Логотип Axiona.ru Аксиона
Процессоры AMD FX 8XXX и 9XXX - 4 ядерные, а не 8?

Процессоры AMD FX 8XXX и 9XXX - 4 ядерные, а не 8?

О проблеме

Архитектурно FX 8XXX и 9XXX - 8 ядерные (физически).
Но при полной нагрузке процессора, он может работать как 4 ядерный.

Проблема в том, что каждые 2 ядра объединены между собой общим блоком кэш-памяти 2-го уровня (L2) и кэш-памятью инструкций (L1 inst.). При высокой нагрузке, между ядрами происходит борьба за кэш-память, одно ядро может почти полностью зарезервировать кэш и тогда второе «тормозило» работая в пол силы.

Такого «изъяна» (или фишки) не было у прошлых поколений процессоров AMD и теперь нет у новых Ryzen.

Сравнение кэш-памяти 8 ядерных процессоров AMD FX8350 и Ryzen 1700

Почему так произошло?

1. Опередить Intel – AMD торопилась представить процессор с 8 физ. ядрами. На тот момент у Intel появился 6 ядерный процессор.

2. У Intel появилась технология Hyper-Threading (HT), которая виртуально делит физическое ядро на 2 потока. Это ускоряет работу с десятком мелких фоновых программ и служб при слабой нагрузке, но при полной нагрузке виртуальное ядро как-бы отключалось отдавая преимущество одному потоку. Благодаря этому Intel рекламировала свои 4/6 ядерные процессоры с HT, как 8/12, но хотя бы честно указывала, что это потоки, а не ядра. Возможно в AMD решили, что раз Intel’у сошла с рук такая хитрость, то можно схалтурить.

3. Создать дешёвые «народные» 6 и 8 ядерные процессоры. У AMD уже были 6 ядерные Phenom II X6, но в производстве они были дорогими: многие отбраковывались и переделывались в 3-4 ядерные, но зато у каждого ядра была своя кэш-память как и положено.

4. Минимальные вложения в разработку материнских плат. За основу взяли прошлый AM3 сокет, который незначительно доработали назвав AM3+ при этом сохранив совместимость со старыми Phenom, которых видимо на складах было ещё много. Такой подход удешевил и ускорил разработку и выход серии FX, заодно минимизировало расходы производителей материнских плат.

Изъян у всей линейки AMD FX

Такая же архитектура у 6 (6ххх) и 4 (4ххх) ядерных процессоров AMD FX.

Но у этих процессоров кэш-память 3го уровня тоже 8 мб, как и у 8 ядерного FX 8XXX/9ХХХ. Что облегчает работу в "тяжелых" приложениях, которые используют 2-3 ядра и даже незначительно обыгрывают старший 8 ядерный FX.

Сравнение AMD FX4350 и FX6350 - кэш-память 3го уровня одинаковая, как и у FX8350 = 8 мб

Работа над ошибками

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

В случае с ОС Windows - AMD и Microsoft рекомендуют отказаться от старых Windows как XP, Vista, 7 и 8 в пользу Windows 10, т.к. она имеет полноценные оптимизации для серии процессоров AMD FX. ОС старается в первую очередь нагружать только по 1 ядру из 2 с общим кэшом.

Судебные тяжбы и последствия

В 2015 году был подан коллективный иск к AMD, обвиняя её в ложном информировании потребителей о характеристиках 8 ядерных моделей FX. Тяжба завершилась формальным мирным соглашением (летом 2019 года) – AMD выплатит до 35$ за процессор серии 8ХХХ и 9ХХХ, но только жителям США штата Калифорнии или купившим через сайт AMD.

Из-за начала этого судебного процесса в Microsoft перестраховались - в диспетчере задач в Windows 10 сократили кол-во физ. ядер, также возможно это нужно было для оптимизации работы процессора.

Диспетчер задач распознает процессоры AMD FX как:
FX 8ХХХ — 4 ядра — 8 потоков (логич.процессоров)
FX 6ХХХ — 3 ядра — 6 потоков
FX 4ХХХ — 2 ядра — 4 потока

Но такие программы как CPU-Z, должны показывать правильное кол-во ядер.

Диспетчер задач Windows 10 отображает 4 ядра у AMD FX-8350, вместо 8 реальных из-за архитектуры процессора
Опубликовано: , автор