Explain loop-invariant code motion, Computer Engineering

Assignment Help:

Explain briefly Loop-invariant code motion of the commonly used code optimization techniques.

Loop-invariant code motion

If a quantity is calculated inside a loop during iteration and its value is similar for iteration, this can vastly improve efficiency to hoist this outside the loop and calculate its value just once before the loop begins. It is particularly significant with the address-calculation expressions generated through loops over arrays. For accurate implementation, such technique must be utilized with loop inversion, since not all code is safe to be hoisted outside the loop.

For illustration:

 for (i=1; i≤10, i++){

x=y*2-(1)

.

.

.

}

statement 1 can be hoisted outside the loop assuming value of x and y does not modify in the loop.


Related Discussions:- Explain loop-invariant code motion

Explain the different types of buses with neat diagram, Explain the differe...

Explain the different types of buses with neat diagram. When a word of data is transferred among units, all the bits are transferred in parallel over a set of lines known as bu

#title.sequential circuit, design modulo 12 up synchronous counter using t ...

design modulo 12 up synchronous counter using t flip flop

What is device drivers, A device driver is software interface that manages ...

A device driver is software interface that manages communication with and control of a particular I/O device or type of device. It is task of device driver to convert logical reque

Define the aims of program generation activity, Program generation activity...

Program generation activity aims at? Ans. At automatic generation of program the program generation activity aims.

Determine through which symbolic names can be associated, Determine Symboli...

Determine Symbolic names can be associated with Symbolic names can be associated with the data or instruction

What is a spanning tree, What is a spanning Tree? A spanning tree is a ...

What is a spanning Tree? A spanning tree is a tree associated with a network. All the nodes of the graph appear on the tree once. A minimum spanning tree is a spanning tree

Explain 100 line exchange with selector finder, Explain 100 line exchange w...

Explain 100 line exchange with selector finder. Design: In place of 100 two-motion selectors as in the case of Design 3, suppose we consider only 24 two-motion selectors. Whe

Explain the potential role of information technology, Question 1: Descr...

Question 1: Describe the five maturity levels of KM that an organization faces when adopting the Frid's KM framework. Question 2: (a) Describe three major issues that

What do you meant by extranets, Extranets can be also used to connect an in...

Extranets can be also used to connect an intranet to Internet so that remote offsite access can be made in a company's intranet by an authorized individual. This can facilitate thr

I want a computer science homework tutor, I can send you the lecture notes ...

I can send you the lecture notes and assignments, and you will walk me through (either record a screencast, or kind on the assignments in red colored font) steps on how to do the a

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd