Дипломная работа

Содержание

Слайд 2

Профайлинг

Профайлинг - измерение использования ресурсов
время – основной ресурс
Инструменты разрабатываются уже 40 лет

Профайлинг Профайлинг - измерение использования ресурсов время – основной ресурс Инструменты разрабатываются уже 40 лет

Слайд 3

Измерения никогда не бывают точными

Проблемы профайлинга

Программа

Программа

программа

программа

программа

Измерения никогда не бывают точными Проблемы профайлинга Программа Программа программа программа программа

Слайд 4

Постановка задачи

Протестировать и сравнить современные промышленные профайлеры
Intel VTune
AMD CodeAnalyst
AQTime
Определить, в каких случаях

Постановка задачи Протестировать и сравнить современные промышленные профайлеры Intel VTune AMD CodeAnalyst
один профайлер предпочтительнее другого
Сравнить их со своей разработкой

Слайд 5

Единицы измерений

До некоторого времени использовались clocks
Tclocks / ν – время выполнения инструкции

Единицы измерений До некоторого времени использовались clocks Tclocks / ν – время
в секундах
Сейчас все используют другие единицы
события,
timer samples,
однозначно не переводятся в секунды

Слайд 6

Причины проблем

Конвейер инструкций (суперскалярность),
Предсказание ветвлений (спекулятивность),
Беспорядочность,
Гиперпоточность, суперпоточность,
Кеши

Причины проблем Конвейер инструкций (суперскалярность), Предсказание ветвлений (спекулятивность), Беспорядочность, Гиперпоточность, суперпоточность, Кеши

Слайд 7

Тестирование профайлеров

Примеры подбирались таким образом, чтобы внести наибольшие погрешности в показания
Пример теста

std::cin

Тестирование профайлеров Примеры подбирались таким образом, чтобы внести наибольшие погрешности в показания
>> k;
int m = n / k;
for (int i = 0; i < m; i++) {
for (int j = 0; j < k; j++) {
s += j;
}
}

Слайд 8

Автоматизация тестирования

Intel VTune
пакетный файл,
скрипт извлечения данных из отчета
AMD CodeAnalyst
пакетный файл,
программа на

Автоматизация тестирования Intel VTune пакетный файл, скрипт извлечения данных из отчета AMD
С++
AQTime
пакетный файл,
GUI,
excel

Слайд 9

Результаты тестирования (1/7) Использование памяти

Без использования памяти

AMD

INTEL

Результаты тестирования (1/7) Использование памяти Без использования памяти AMD INTEL

Слайд 10

Результаты тестирования (2/7) Использование памяти

Активное использование памяти

AMD

INTEL

Результаты тестирования (2/7) Использование памяти Активное использование памяти AMD INTEL

Слайд 11

Результаты тестирования (3/7) Использование памяти

Использование памяти с промахами кеша

AMD

INTEL

Результаты тестирования (3/7) Использование памяти Использование памяти с промахами кеша AMD INTEL

Слайд 12

Результаты тестирования (4/7) Предсказание ветвлений

Маленький цикл

AMD

INTEL

Результаты тестирования (4/7) Предсказание ветвлений Маленький цикл AMD INTEL

Слайд 13

Результаты тестирования (5/7) Предсказание ветвлений

Периодически выполняемые операции

AMD

INTEL

Результаты тестирования (5/7) Предсказание ветвлений Периодически выполняемые операции AMD INTEL

Слайд 14

Результаты тестирования (6/7) Потеря контекста

Погрешность семплирования

AMD

Результаты тестирования (6/7) Потеря контекста Погрешность семплирования AMD

Слайд 15

Результаты тестирования (7/7) Частый вызов процедур

Ошибка профайлера AQTime

AMD

Результаты тестирования (7/7) Частый вызов процедур Ошибка профайлера AQTime AMD

Слайд 16

Сравнение профайлеров

AMD CodeAnalyst проявил себя лучше всех
Работает на процессорах обоих типов
Intel VTune

Сравнение профайлеров AMD CodeAnalyst проявил себя лучше всех Работает на процессорах обоих
на процессорах Intel работает так же хорошо как и CodeAnalyst
AQTime хуже всех
значительная погрешность в некоторых тестах
ошибка профайлинга
отсутствие гибких средств автоматизации тестирования

Слайд 17

Результаты

Разработан собственный профайлер использующий метод подсчета инструкций
Предложена методика тестирования профайлеров
разработаны тесты
автоматизирован процесс

Результаты Разработан собственный профайлер использующий метод подсчета инструкций Предложена методика тестирования профайлеров
тестирования
предложена функция перевода единиц
Выявлены преимущества и недостатки профайлеров
Предложены рекомендации по использованию инструментов
Имя файла: Дипломная-работа.pptx
Количество просмотров: 69
Количество скачиваний: 0