2.2. Описание локальности данных и вычислений: различия между версиями
Перейти к навигации
Перейти к поиску
[непроверенная версия] | [непроверенная версия] |
VadimVV (обсуждение | вклад) (Новая страница: «Алгоритм описания п. 12: # '''<span style="color:red">Описание локальности алгоритма</span>''' # '''Описани…») |
|||
Строка 14: | Строка 14: | ||
#### По возможности проанализировать положение изучаемой реализации в ранжировании относительно типовых программ. Особенно интересно анализ результатов по сравнению со схожими реализациями (например, сравнение классического и блочного перемножения матриц; рекурсивной и нерекурсивной реализаций; двух реализаций, среди которых одна является значительной частью другого). | #### По возможности проанализировать положение изучаемой реализации в ранжировании относительно типовых программ. Особенно интересно анализ результатов по сравнению со схожими реализациями (например, сравнение классического и блочного перемножения матриц; рекурсивной и нерекурсивной реализаций; двух реализаций, среди которых одна является значительной частью другого). | ||
# '''<span style="color:red"> Анализ на основе теста Apex-Map </span>''' | # '''<span style="color:red"> Анализ на основе теста Apex-Map </span>''' | ||
+ | |||
+ | [[Категория:Algowiki:Справка]] |
Текущая версия на 15:18, 8 июля 2016
Алгоритм описания п. 12:
- Описание локальности алгоритма
- Описание локальности реализации алгоритма
- Качественное (словесное) описание пространственной и временной локальности
- Построить график профиля обращений в память.
- Выполнить визуальный анализ структур профиля обращений (при необходимости масштабировать график для проведения более подробного анализа). На различных шагах масштабирования привести выводы/предположения о пространственной и временной локальности, которые можно сделать на данном шаге.
- В результате должно сложиться понимание о структуре профиля с точностью до отдельных обращений.
- Особое внимание стоит обратить на выделение характерных фрагментов профиля: итераций, циклов, переборов элементов массивов, случайному доступу и т.д.
- При масштабировании необходимо на предыдущем графике профиля отобразить его фрагмент, который будет масштабироваться.
- После проведения визуального анализа сделать общие выводы о пространственной/временной локальности (если он не были сделаны ранее).
- Количественная оценка локальности
- Посчитать daps и cvg.
- Построить графики со сравнением каждой из оценок с реализациями других, типовых алгоритмов (например, Линпак, БПФ, перемножение матриц и т.д.)
- По возможности проанализировать положение изучаемой реализации в ранжировании относительно типовых программ. Особенно интересно анализ результатов по сравнению со схожими реализациями (например, сравнение классического и блочного перемножения матриц; рекурсивной и нерекурсивной реализаций; двух реализаций, среди которых одна является значительной частью другого).
- Качественное (словесное) описание пространственной и временной локальности
- Анализ на основе теста Apex-Map