Кэш-память процессора может работать эффективнее

Можно создавать сколь угодно быстрые транзисторы, но пересылку данных в память и обратно никто отменить не в состоянии. Использование кэш-памяти в составе процессора для ускорения обмена данными с ядром (ядрами) стало прорывом для ускорения вычислений. Но разве есть предел для совершенства? Как считают разработчики из Массачусетского Технологического и Университета Коннектикута, улучшить можно всё. Даже давно привычные алгоритмы работы с кэш-памятью.

реклама

Большинство современных процессорных архитектур использует иерархическую структуру кэш-памяти (от собственной для каждого ядра до разделяемой) и пространственно-временной принцип кэширования. Последнее в общем случае означает, что при обращении к данным в оперативной памяти следующее обращение будет к близлежащей области в ОЗУ, как остаётся высокая вероятность повторного обращения к запрашиваемым данным. Однако объём "персонального" кэш-буфера сильно ограничен, и в случае его заполнения данные необходимо сбрасывать в основную память. Всё это требует времени и затрат энергии. Разработчики считают, что если внести в эти механизмы новые алгоритмы, то работу с кэш-памятью можно ускорить на 15% при снижении потребления на операции с кэш-памятью до 25%.

Для зачтения на конференции IEEE International Symposium on Computer Architecture подготовлен доклад, который проливает свет на некоторые новые алгоритмы работы ядер с кэш-памятью. Так, в случае заполнения кэш-памяти первого уровня учёные предлагают половину данных сбрасывать в разделяемую кэш-память, что в любом случае даст более быстрый доступ, чем к оперативной памяти. Второй приём касается работы двух ядер с общим блоком данных, что требует постоянной синхронизации между ними. Если перейти к поочерёдному обращению к кэш-памяти, то это ликвидирует вычислительные затраты на синхронизацию. Наконец, участки разделяемой кэш-памяти, в которых хранятся запрашиваемые отдельными ядрами данные, предлагается считать как логическое продолжение кэш-памяти первого уровня конкретных ядер. Помимо прочего сократится число команд и операций, что тоже положительно скажется на скорости и энергопотреблении процессоров. Что самое приятное, эти улучшения или часть из них можно сравнительно просто реализовать даже без изменения процессорной архитектуры. Иными словами, в самое ближайшее время.

Оценитe материал
рейтинг: 4.4 из 5
голосов: 49

Комментарии Правила

Возможно вас заинтересует

Сейчас обсуждают