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

What is hit and hit rate , What is hit? A successful access to data in ...

What is hit? A successful access to data in cache memory is known as hit. Normal 0 false false false EN-IN X-NONE X-NONE

Stata about the magnetic stripes, Stata about the Magnetic stripes  Th...

Stata about the Magnetic stripes  These comprise information/data stored on magnetic material often on the back of a credit/debit card; the information is automatically read b

Programming, Which is the best programming language to learn?

Which is the best programming language to learn?

Webforms application and to an mvc application, What is the difference amon...

What is the difference among adding routes, to a webforms application and to an mvc application? Ans) To add routes to a webforms application, we use MapPageRoute() process of

Interconnection network in the form of a linear array, Q. Interconnection n...

Q. Interconnection network in the form of a Linear Array? The sorting problem particularly selected is bubble sort and interconnection network may be represented as n processor

Synchronous sequential circuits, Q. Differentiate the Multiplexer and Demul...

Q. Differentiate the Multiplexer and Demultiplexer with respect to their concept, block diagram and circuit. Q. What is the difference between Synchronous sequential circuits an

Draw a schematic for managing dynamic storage allocation, Draw a simple sch...

Draw a simple schematic for managing dynamic storage allocation. A simple schematic for managing dynamic storage allocation is as follows: Block size pointe

What are the mapping techniques, What are the mapping techniques? a)Dir...

What are the mapping techniques? a)Direct mapping b) Associative mapping c)  Set associative mapping

Input, what is an input?

what is an input?

Illustrate the state diagrams of dynamic modelling, Dynamic modelling: stat...

Dynamic modelling: state diagrams A state diagrams allow you to further explore operations and attributes which need to be defined for an object. They comprises of sets of sta

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