ограничения размера кеш-памяти - PullRequest
2 голосов
/ 07 октября 2011

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

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

Ответы [ 2 ]

1 голос
/ 05 мая 2015

Действительно, прирост производительности становится все менее значительным после 64 КБ размера кеша.Вот график из википедии , показывающий, что, независимо от схемы ассоциативности множеств, частота промахов уменьшается незначительно с увеличением размера кэша. Pass 64KB Miss rate versus cache size on the Integer portion of the SPEC CPU2000

0 голосов
/ 07 октября 2011

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

EDIT:
Ну, у меня нет никаких статей по этому поводу, но я все равно объясню свое мнение простым вопросом: если программе требуется х байт памяти, какая разница, если размер кеша равен 10 * х байтов или 100 * Икс? После того, как все данные загружены в кеш (который вообще не зависит от их размера), разница в скорости доступа к кешу. И учитывая местность ссылки , нет необходимости иметь все в кэше.
Кроме того, наличие больших цепочек требует наличия лучшего алгоритма для поиска в нем запрашиваемых данных. Например, доступ к данным в полностью ассоциативных кэшах станет медленнее, чем доступ к основной памяти, поскольку размер кэша увеличивается (что означает, что все больше и больше мест для поиска данных). Однако при рассмотрении системы многозадачности возникают другие проблемы, о которых я на самом деле не знаю.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...