Как найти размер набора ассоциативности кэша с массивом? - PullRequest
0 голосов
/ 06 ноября 2019

Известные переменные: Среднее число пропусков и шагов для каждого массива размером 8 КБ, 16 КБ, 32 КБ и 64 КБ. Мы смогли получить эти значения с помощью PAPI. Посмотрев на график с быстрым и средним промахами каждого массива, мы обнаружили, что размер кэша составляет 32 КБ, а размер блока кэша - 64 Б.

Код C, повторяющий массив:

for(array_size=ARRAY_MIN; array_size < ARRAY_MAX; array_size=array_size*2)
    for(stride=1; stride <= array_size/2; stride=stride*2){
        limit = array_size - stride + 1;
        for(repeat=0; repeat<=200*stride; repeat++)
            for(index=0; index<limit; index+=stride)
                x[index] = x[index] + 1;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...