oop курсовая. Исследование вычислительной эффективности объектноориентированных приложений
Скачать 0.82 Mb.
|
7. УЛУЧШЕНИЕ ХАРАКТЕРИСТИК КАЧЕСТВА ПРИЛОЖЕНИЙ7.1. Использование встроенной оптимизации кодаВ ходе выполнения данной курсовой работы был проведён ряд улучшений характеристик как процедурного, так и объектно-ориентированного приложений. Эти улучшения касаются в основном ускорения работы приложений и уменьшения количества занимаемой памяти. Проекты Visual Studio имеют отдельные конфигурации выпуска и отладки для программы. Ранее в проектах использовалась конфигурация решений Debug, которая позволяла делать отладку программ и таким образом выявлять её ошибки. Так как приложения уже не требуют этого, в проектах будет использоваться конфигурация решений Release, которая будет значительно улучшать характеристики приложений за счет того, что в debug-режиме в сборку записываются все отладочные ресурсы, а в release – нет. Сравним скорости процедурного и объектно-ориентированного приложения с использованием debug-режима и release-режима. Результаты работы приложений в данных режимах представлены на рисунках 17-20. Как видно из результатов работы, процедурное приложение стало работать примерно в 2,5 раза быстрее, а объектно-ориентированное – примерно в два раза. Рис. 17. Результаты работы настольного процедурного приложения с использованием debug-режима Рис. 18. Результаты работы настольного процедурного приложения с использованием release-режима Рис. 19. Результаты работы настольного объектно-ориентированного приложения с использованием debug-режима Рис. 20. Результаты работы настольного объектно-ориентированного приложения с использованием release-режима 7.2. ПрофилированиеСредства профилирования Visual Studio можно использовать для анализа проблем с производительностью в приложении. Выборка представляет собой метод профилирования, показывающий функции, которые выполняют основную часть работы в пользовательском режиме приложения. С выборки удобно начать поиск областей, позволяющих ускорить работу приложения. Было проведено профилирование ЦП, которое показывает, какой метод является «узким местом» в программе, то есть имеет повышенную нагрузку. На рис. 21 видно, что метод Distribution занимает более 41% от времени выполнения. Создание точек и присвоение каждой из них рандомных координат x, y в данном методе реализовано не совсем оптимально. После оптимизации запускаем вновь профилирование и видим, что метод занимает 40% времени выполнения, это показано на рис 22. Для малого количества точек результат практически не заметен, однако для большого количества точек разница во времени присутствует, а значит оптимизация выполнена не зря (рис.23). В таблице 3 приведено сравнение результатов работы программы до использования профилирования и после. Рис. 21. Первый отчет сеанса профилирования ОО приложения. Окно «Сводка» Рис. 22. Второй отчет сеанса профилирования ОО приложения. Окно «Сводка» Рис. 23. Результаты работы оптимизированного ОО приложения Таблица 3. Результаты профилирования ОО приложения
По данным результатам видно, что затраты времени на работу программы уменьшились. |