Назначение кэша в процессоре

кэш

Раздел: Продвинутым, Новичкам Дата: 21.02.2018   Автор: Александр МойсеенкоКомментариев: 0 

Последнее обновление: 12/07/2022

В этом году на рынке появятся первые «процессоры» с кэшем 3-го уровня – L3, что улучшит производительность мобильных устройств. Поэтому нам предстоит разобраться, для чего используется кэш память и как влияет на производительность смартфона/планшета на Android OS.

Понятие и месторасположение кэш-памяти

Кэш – память с высокой скоростью доступа. Используется процессором для получения часто востребованных данных, без обращения к оперативной памяти.

Такой тип памяти состоит из транзисторов и располагается с процессором на одном кристалле. Благодаря чему время доступа к информации короче, чем при обращении к другим типам памяти. При этом занимаемая площадь транзисторной группы больше, в сравнении с конденсаторной оперативной памяти, что накладывает ограничение на объем. Поэтому кэш-память текущих SoC, начинается с 4-16 кБ и не превышает 1-2 МБ.

Читайте также:

Особенности платформы ARM DynamIQ

Какое будущее у мобильно-настольных версий Android

На что способен умный дом

Уровни кэша

Текущие мобильные платформы оснащены двумя уровнями кэша – L1 и L2. Некоторые конфигурации, чаще Qualcomm Snapdragon, содержат кэш нулевого уровня — L0. Для наглядности рассмотрим уровни и объем кэша, трех систем на кристалле:

  • Snapdragon 801 MSM8974AC: L0 – 4+4 кБ, L1 – 16+16 кБ, L2 – 2048 кБ (2 МБ).
  • Snapdragon 820 MSM8996: L1 – 32+32 кБ, L2 – 1536 кБ (1.5 МБ).
  • MediaTek MT6750T: L1 – 32+32 кБ, L2 – 512 кБ (0.5 МБ).

Стоит отметить, кэш L0 и L1, в равной мере распределен между процессорными ядрами. Кэш L2 общий для общей группы ядер.

кэш 2

Назначение и принцип работы кэша

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

Для лучшего понимания организации памяти, представим процессор в виде человека, который ищет информацию в книгах, что обозначим как пакет данных. Процессор, как и человек, заранее не знает, какая информация потребуется, поэтому исследует доступный пакет данных. В руках помещается 1-2 книги, что справедливо для кэша L0 или L1 ввиду малого объема, но и искомое найдется быстрее. При отсутствии данных, поиск переносится в книжный шкаф, который вмещает больше книг. Если требуемая книга отсутствует, требуется идти в библиотеку, книжный универмаг или заказывать книгу через интернет.

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

Влияние кэша L3 и требуемый объем

Расположение дополнительной области кэша L3, уменьшит частоту обращения процессора к оперативной и физической памяти. Это улучшит производительность мобильного устройства на Android, за счет уменьшения задержек памяти и простоя процессора. За счет оптимизации, кэш начальных уровней станет индивидуальным для ядер, а L3 – общим. Так же снизится нагрузка на внешнюю память, что приведет к дополнительному сбережению энергии.

Поскольку кэш влияет на производительность устройства, складывается впечатление, что увеличение объема даст дополнительный прирост, но это не так. На оптимальный объем кэша влияет тип и количество ядер. Поэтому не имеет смысла использовать объемный кэш в бюджетных SoC или платформах из 4-х ядер. Поскольку в ином случае, большой кэш только снизит производительность, поскольку процессору придется затрачивать больше времени на поиск информации.

Видео инструкции

Вывод

Внедрение кэша L3 кажется не столь значительным событием, так как это только 1 или 2 МБ дополнительной памяти. В случае с настольными процессорами, прирост производительности с кэшем L3 в среднем достигает 15-20%. Насколько вырастет скорость работы Android смартфонов, узнаем в этом году, с появлением первых чипов с кэшем L3. Стоит отметить, что iPhone 8 с кэшем 3-го уровня, в бенчмарке GeekBench демонстрирует двукратный прирост в одноядерном тесте и до 40% в многоядерном.

Связанные записи

  • Процессор 10400f есть с Кэш L1 (инструкции)(данные) 384 КБ и с Кэш L1 192КБ, при этом объем кэш 1,5Кб и 12мб. Какой лучше

    • Доброго времени суток. У 10400f и 10400 одинаковый объем кэша. L1 — 6 x (32 + 32) КБ, L2 — 6 x 256 КБ, L3 — 12 МБ. Если вы нашли версию, где кэш L1 больше, дайте ссылку я взгляну. А так вариант, где больше кэша лучше. При этом существенной разницы в работе не будет.

  • {"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}
    >