Скачать презентацию ОПТИМИЗАЦИЯ ПРОГРАММ ОПТИМИЗАЦИЯ ПРОГРАММ ЭТО Процесс построения Скачать презентацию ОПТИМИЗАЦИЯ ПРОГРАММ ОПТИМИЗАЦИЯ ПРОГРАММ ЭТО Процесс построения

Оптимизация программ.pptx

  • Количество слайдов: 7

ОПТИМИЗАЦИЯ ПРОГРАММ ОПТИМИЗАЦИЯ ПРОГРАММ

ОПТИМИЗАЦИЯ ПРОГРАММ ЭТО Процесс построения по исходной программе эквивалентной программы, обладающей лучшими характеристиками времени ОПТИМИЗАЦИЯ ПРОГРАММ ЭТО Процесс построения по исходной программе эквивалентной программы, обладающей лучшими характеристиками времени работы. Целью оптимизации является получение оптимальной системы

ОПТИМИЗАЦИЯ ВКЛЮЧАЕТ: оптимизацию распределения памяти оптимизацию выражений оптимизацию циклов ОПТИМИЗАЦИЯ ВКЛЮЧАЕТ: оптимизацию распределения памяти оптимизацию выражений оптимизацию циклов

ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ ПАМЯТИ Оптимизация распределения памяти предусматривает размещение переменных, имеющих пересекающиеся области действия, в ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ ПАМЯТИ Оптимизация распределения памяти предусматривает размещение переменных, имеющих пересекающиеся области действия, в одних и тех же ячейках памяти. Таким образом решается задача оптимизации использования индексных регистров. Если в программе используется подряд несколько одинаковых модификаций, то многократное вычисление и засылка на индексный регистр для сокращения времени счета исключается

ОПТИМИЗАЦИЯ ВЫРАЖЕНИЙ И ЦИКЛОВ Оптимизация выражений состоит в однократном вычислении значений выражения, запоминании его ОПТИМИЗАЦИЯ ВЫРАЖЕНИЙ И ЦИКЛОВ Оптимизация выражений состоит в однократном вычислении значений выражения, запоминании его в рабочем регистре и дальнейшем многократном использовании этого значения в процессе вычислений. Оптимизация циклов сводится к вынесению за пределы цикла выражений, не зависящих от параметров цикла

ПРИНЦИПЫ ОПТИМИЗАЦИИ оптимизация должна быть максимально машиннонезависимой и переносимой на другие платформы (ОС) без ПРИНЦИПЫ ОПТИМИЗАЦИИ оптимизация должна быть максимально машиннонезависимой и переносимой на другие платформы (ОС) без дополнительных затрат и существенных потерь эффективности оптимизация не должна увеличивать трудоемкость разработки (в т. ч. и тестирования) приложения более чем на 10%— 15% оптимизирующий алгоритм должен давать выигрыш не менее чем на 20%— 25% в скорости выполнения оптимизация должна допускать безболезненное внесение изменений.

ВЫВОД Оптимизируйте только в случае необходимости, так как, выполняя оптимизацию, можно ухудшить удобочитаемость программы, ВЫВОД Оптимизируйте только в случае необходимости, так как, выполняя оптимизацию, можно ухудшить удобочитаемость программы, либо добавить ошибки, либо потерять много времени на программирование. Если оптимизация необходима, попытайтесь вначале использовать оптимизирующий компилятор. Возможно, он умеет делать все, что вам нужно. Определите критические области, подлежащие оптимизации. Оптимизация некритичных частей программ — пустая трата времени. Применяйте локальную оптимизацию в критических областях