|
Обнаружение и оценка количества промахов когерентности на основе вероятностной модели
Е. А. Велесевич Институт системного программирования РАН
Аннотация:
Ложное разделение кэша возникает, когда нити, параллельно выполняющиеся на разных ядрах, поочередно обновляют разные переменные, попадающие в одну строку кэша, что приводит к устареванию информации о текущем состоянии памяти в кэше ядра, используемом первой нитью приложения, и необходимости нити ждать, пока информация в кэше обновится. В статье для оценки количества промахов предлагается использовать инструментацию кода и постобработку ее результатов: по наблюденным промахам кэша в трассе обращений к памяти с временными метками для каждой нити вычисляется вероятность того, что во время обращения, выбранного с некоторой заранее определенной вероятностью, и следующего обращения к этой строке в этой же нити была запись в ту же строку в другой нити. Трассировщик программы реализован как проход в открытом компиляторе GCC, добавляющий специальные инструкции перед каждым обращением к памяти и выполняющийся после всех оптимизирующих проходов, благодаря чему становится возможной оценка эффективности использования кеша в оптимизированных приложениях. Анализатор реализован в виде отдельного приложения, которому подается на вход сгенерированные на тестовом наборе данных трассы обращений к памяти, имевших место в нитях анализируемого приложения. Замедление работы программы при трассировке для проверенных экспериментально тестовых приложений составляет примерно 10 раз, при этом оно зависит от вероятности выборки, которая в свою очередь выбирается в зависимости от характера и времени работы приложения, но практически не зависит от длины кэш-линии.
Ключевые слова:
ложное разделение кэша, GCC, инструментация кода.
Образец цитирования:
Е. А. Велесевич, “Обнаружение и оценка количества промахов когерентности на основе вероятностной модели”, Труды ИСП РАН, 27:4 (2015), 39–48
Образцы ссылок на эту страницу:
https://www.mathnet.ru/rus/tisp163 https://www.mathnet.ru/rus/tisp/v27/i4/p39
|
Статистика просмотров: |
Страница аннотации: | 115 | PDF полного текста: | 124 | Список литературы: | 30 |
|