MIT 28 More loop optimization, страница 2

PDF-файл MIT 28 More loop optimization, страница 2 Конструирование компиляторов (53424): Статья - 7 семестрMIT 28 More loop optimization: Конструирование компиляторов - PDF, страница 2 (53424) - СтудИзба2019-09-18СтудИзба

Описание файла

PDF-файл из архива "MIT 28 More loop optimization", который расположен в категории "". Всё это находится в предмете "конструирование компиляторов" из 7 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст 2 страницы из PDF

However, these are awkwardunless the CFG is converted to single static assignment (SSA) form.5Common subexpression eliminationCommon subexpression elimination (CSE) is a classic optimization that replaces redundantly computedexpressions with a variable containing the value of the expression. It works on a general CFG. An expressionis a common subexpression at a given node if it is computed in another node that dominates this one, andnone of its operands have been changed on any path from the dominating node.For example, in Figure 2, the expression a+1 is a common subexpression at the bottom node. Therefore,it can be saved into a new temporary t in the top node, and this temporary can be used in the bottom one.It is worth noting that CSE can make code slower, because it may increase the number of live variables,causing spilling.

If there is a lot of register pressure, the reverse transformation, forward substitution, mayimprove performance. Forward substitution copies expressions forward when it is cheaper to recomputethem than to save them in a variable.5.1Available expressions analysisAn expression is available if it has been computed in a dominating node and its operands have not beenredefined. The available expressions analysis finds the set of such expressions. Implicitly, each such expressionis tagged with the location in the CFG that it comes from, to allow the CSE transformation to be done.Available expressions is a forward analysis.

We define out(n) to be the set of available expressions onedges leaving node n. An expression is available if it was evaluated at n, or was available on all edgesentering n, and it was not killed by n:in(n) =\out(n)n0 ≺nout(n) = in(n) ∪ exprs(n) − kill(n)Therefore, dataflow values are sets of expressions ordered by ⊆; the meet operator is set intersection(∩), and the top value is the set of all expressions, usually implemented as a special value that acts as theidentity for ∩.The expressions evaluated and killed by a node, exprs(n), are summarized in the following table. Notethat we try to include memory operands as expressions subject to CSE, because replacing memory accesseswith register accesses is a useful optimization.b=a+1c=3*bif c > 0t=a+1b=tc=3*bif c > 0b=0d=c+1d=a+1d=tFigure 2: Common subexpression elimination4b=0d=c+1nx=e[e1 ] = [e2 ]x = f (~e)exprs(n)e and all subexpressions of e[e2 ], [e1 ], and subexpressions~e and subexpressionsif ee and subexpressionskill(n)all expressions containing xall expressions [e0 ] that can alias [e1 ]expressions containing x and expressions [e0 ] thatcould be changed by function call to f∅If a node n computes an expression e that is used and available in other nodes, the optimization proceedsas follows:1.

In the node that the available expression came from, add a computation t = e, and replace the use of ewith t.2. Replace expression e in other nodes where it is used and available with t.CSE can work well with copy propagation. For example, the variable b in the above code may becomedead after copy propagation. However, CSE plus copy propagation can enable more CSE, because CSEonly recognizes syntactically identical expressions as the same. Copy propagation can make semanticallyidentical expressions look the same through its renaming of variables.

It is possible to generalize AvailableExpressions to keep track of equalities more semantically, though this makes the analysis much morecomplex.5.

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5137
Авторов
на СтудИзбе
440
Средний доход
с одного платного файла
Обучение Подробнее