29359

Машинно-независимая оптимизация линейных участков программ

Доклад

Информатика, кибернетика и программирование

Покажем простейшие преобразования линейных и циклических участков для тетрадной формы программ:Машиннонезависимая оптимизация линейных участков программЛинейным участком программы называется последовательность операцийкоманд которая не содержит условных переходов возможно кроме последней операции. Для оптимизации линейных участков в простейшем случае используется два основных преобразования:1. В списке тетрад выделит границы участков включающих вычисления выражений по операторам присвоения;2.

Английский

2013-08-21

26.5 KB

4 чел.

25) Машинно-независимая оптимизация линейных участков программ.

При выполнении такой оптимизации наиболее часто преобразуются линейные и циклические участки программ. Самой удобной формой представления программы при машинно-независимой оптимизации является тетрадная форма.
Покажем простейшие 
преобразования линейных и циклических участков для тетрадной формы программ:
Машинно-независимая оптимизация линейных участков программ
Линейным участком программы называется последовательность операций(команд), которая не содержит условных переходов, возможно кроме последней операции.
Для линейного участка программы последовательность выполняемых действий не зависит от обрабатываемых данных. Для оптимизации линейных участков в простейшем случае используется два основных преобразования:
1. свертка, т.е. выполнение операций для которых операнды известны во время трансляции ( напр. константы)
2. исключение избыточных операций за счет определения общих подвыражений.
Рассмотрим примеры алгоритмлв, реализ-х эти преобразования над арифмитическими выражениями, заданными в тетрадной форме.
Алгоритм свертки
1. В списке тетрад найти такую тетраду, все операнды которой заданы константами;
2. Выполнить операцию, заданную этой тетрадой и создать новую константу; (поместить ее в таблицу констант)
3. Исключить найденную тетраду из списка, а все ссылки на ее результат заменить обращением к новой константе;
4. Повторять шаги с 1-го по 3-ий, пока в списке тетрад появятся изменения.
Алгоритм исключения избыточных операций
1. В списке тетрад выделит границы участков включающих вычисления выражений (по операторам присвоения);
2. для всех тетрад, задающих коммутативные операции упорядочить операнды в соответствии с некоторым правилом;(коммутативн. называются операции результат выполнения которых не изменяется при перестоновке операндов)
3. в каждом выражении найти идентичные тройки вида:
(<оператор> , <операнд1> , <операнд2>). Исключить из списка все соответствующие тетрады, кроме первой и исправить ссылки на результат;
4. повторять шаги 2 и 3 до тех пор, пока появляются изменения в списке тетрад.
Избыточные операции обычно появляются в неочевидных ситуациях. В частности при работе с многомерными массивами.
Любой многомерный массив в конечном итоге преобразуется в одномерный. В послед-ть зарезервированных ячеек памяти. Это неизбежно, т.к. адресация в памяти линейна. Поэтому при использовании 2-х или более индексов обращение к любому элементу предпологает «скрытое» вычисление его номера в этой последовательности решений.


 

А также другие работы, которые могут Вас заинтересовать

69509. Финансовая деятельность субъектов хозяйствования 623.5 KB
  В соответствии с действующим законодательством Украины под хозяйственными обществами подразумеваются предприятия учреждения организации образованные на основе соглашения между юридическими лицами и гражданами путем объединения их собственности и предпринимательской...
69510. Ценные бумаги 387.5 KB
  Рынок ценных бумаг — часть рынка ссудных капиталов, где осуществляются эмиссия и купля-продажа ценных бумаг. Через рынок ценных бумаг (банки, специальные кредитно-финансовые институты и фондовую биржу) аккумулируются денежные накопления предприятий, банков, государства и частных лиц...
69511. История экономических учений, конспект лекций 490.5 KB
  Экономическая мысль человечества прошла длинный путь от появления определенных представлений о явлениях хозяйственной жизни отдельных идей высказываний взглядов экономического характера к формированию экономической теории учений. Именно эти теории их возникновение развитие...
69512. Инвестирование Конспект лекций 303 KB
  Но предметом инвестирования здесь являются только те предприятия которые целиком продаются на аукционах либо полностью выкупаются трудовыми коллективами. Рынок объектов предприятия Является самостоятельным элементом ИР. Рынок объектов финансового инвестирования включает: Финансовый рынок...
69513. Основы внешнеэкономической деятельности, курс лекций 582 KB
  Основные задачи внешнеэкономической деятельности государства такие как: таможенный контроль товаров перемещаемых через государственную границу; нетарифное регулирование экспорта и импорта отдельных товаров общегосударственного значения лицензирование и квотирование...
69514. ПРОЕКТНЫЙ АНАЛИЗ 1.02 MB
  Добыть знания о самых важных факторах и критериях которые учитываются на различных стадиях жизненного цикла проекта. Если в бизнес планировании проект рассматривается только с точки зрения инвесторов то в проектном анализе с точки зрения всех участников проекта...
69515. Экономика труда и социально-трудовые отношения 224 KB
  Труд – это целенаправленная созидательная деятельность; приложение человеком умственных и физических усилий для получения полезного результата в удовлетворении своих материальных и духовных потребностей; процесс превращения ресурсов природы в ценности и блага...
69516. Экономическая история 780.5 KB
  Главной хозяйственной формой этого времени была община коллектив с полной или частичной общей собственностью на средства производства и общепринятыми формами самоуправления. Рост сельскохозяйственного производства стимулировал развитие ремесел и торговли.
69517. Банковская деятельность 893.5 KB
  Банк ─ юридическое лицо которое имеет исключительное право на основании лицензии Национального банка Украины осуществлять следующие операции: привлечение в виде вкладов денежных средств физических и юридических лиц и размещение обозначенных...