Почему в процессорах используют так мало кэша

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

В таком случае, возникает другой вопрос: для чего нужна оперативная память, если она не такая и быстрая, как про неё говорят? Не проще ли сделать сразу 16 гигабайт кэша на процессоре? Тем более, что это позволит избавиться от одной «ненужной» комплектующей — оперативной памяти.

И правда, кажется довольно странным, что в наше время терабайтных жёстких дисков, видеокарт с 2-11 ГБ видеопамяти и гигабитной скоростью интернета, может идти речь о десятках мегабайт памяти максимум (в случае кэша 2 и 3 уровней), а то и вообще о килобайтах (кэш первого уровня).

Чтобы ответить на поставленный вопрос, нужно представлять, чем руководствуются инженеры во время проектирования устройств. Основная задача — получение малых задержек при доступе к данным. Для этого кэш располагают рядом с ядрами процессора. Всё это связывается высокоскоростной шиной.

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

Давайте посмотрим реальное изображение кристалла процессора:

Это Intel Core третьего поколения. Ядра (4 штуки) занимают примерно треть всего кристалла. На кэш приходится порядка пятой части. У модели i7-3770K было 8 МБ кэша 3-его уровня и 1 МБ 2-ого уровня. Иными словами, если поставить цель увеличить кэш в 5+ раз, он будет занимать такую же площадь, как и весь кристалл.

Очевидно, что в идеальном мире себестоимость подобных процессоров оказалась бы в 2 раза выше. Но мы живём не в идеальном мире, и при увеличении площади кристалла выход годных моделей непропорционально уменьшается, что неминуемо скажется на отпускной цене изделия.

Кроме того, нельзя отменять физические законы: значительное увеличение размера кэша однозначно приведёт к увеличению времени задержек получения данных из него.

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

— С точки зрения инженеров: придётся изыскивать пути не только для размещения огромного массива данных на ограниченном пространстве, но и усложнять структуру для снижения задержек.

— По соображениям маркетинга: продать очень дорогую вещь конечному пользователю намного сложнее, чем просто дорогую. А высокий процент бракованных кристаллов может привести к тому, что разница в цене между «урезанным» и полноценным устройством будет составлять несколько порядков.

— Для рядового пользователя: цена процессоров значительно возрастёт, чего нельзя сказать о производительности.


Это тоже интересно

Видеокарты AMD для игр в Full HD

Читать 22 апреля 2018

Что будет если к слабому процессору поставить мощную видеокарту

Читать 2 декабря 2019

Что такое райзер и зачем он нужен

Читать 18 мая 2018

Вопросы и ответы: Windows

Читать 30 ноября 2018

Комментарии

Пока комментариев нет. Будьте первым!

Ваша электронная почта нигде не хранится!