Процессоры AMD FX 8XXX и 9XXX - 4 ядерные, а не 8?
О проблеме
Архитектурно FX 8XXX и 9XXX - 8 ядерные (физически).
Но при полной нагрузке процессора, он может работать как 4 ядерный.
Проблема в том, что каждые 2 ядра объединены между собой общим блоком кэш-памяти 2-го уровня (L2) и кэш-памятью инструкций (L1 inst.). При высокой нагрузке, между ядрами происходит борьба за кэш-память, одно ядро может почти полностью зарезервировать кэш и тогда второе «тормозило» работая в пол силы.
Такого «изъяна» (или фишки) не было у прошлых поколений процессоров AMD и теперь нет у новых Ryzen.
Почему так произошло?
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.
Работа над ошибками
После выхода процессоров 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, должны показывать правильное кол-во ядер.