Как найти наиболее часто используемые области памяти?

Я ищу профилирование большого приложения C ++ и определить, какие части данных (или области памяти) выбираются чаще всего. По сути, я хочу иметь возможность делать что-то вроде алгоритма кэширования MFU процессора для определения того, что хранить в кэшах L2 / L3. На удивление мало информации в Интернете о том, кто пытался это сделать.

Изменить: изменен MRU на МФУ

Редактировать 2: чтобы уточнить, мне нужны адреса или структуры данных, на которые указывают адреса.

4

Решение

Ты можешь использовать Инструмент для булавок регистрировать все обращения к памяти и рассчитывать попадание / пропуск кэша.

2

Другие решения

Valgrind может сделать это — ему понадобится плагин, не знаю, если он уже есть.

РЕДАКТИРОВАТЬ: это называется cachegrind

1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector