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

DFD, Define software architecture and describe which types of architectures...

Define software architecture and describe which types of architectures can be used in Email or Facebook applications

Explain bus, Define bus. When a word of data is transferred among units...

Define bus. When a word of data is transferred among units, all the bits are transferred in parallel over a set of lines called bus. In addition to the lines that take the data

Threads model - parallel programming model, In this model a one process can...

In this model a one process can have multiple, concurrent implementations paths. The major programs are scheduled to run by the native operating system. It loads and obtains all th

Difference between next and continue clause, The difference among the next ...

The difference among the next and continue verb is that in the continue verb it is used for a situation where there is no EOF condition that is the records are to be accessed again

On what machines matlab should be run?, Matlab will run from sthelens, and ...

Matlab will run from sthelens, and only if sthelens is down, from cher, orsay or tiree. It runs on other machines too, but some of the other machines have older versions of the OS

Working of fully parallel associative processor, Q. Working of Fully Parall...

Q. Working of Fully Parallel Associative Processor? Fully Parallel Associative Processor: This processor accepts the bit parallel memory organisation. There are 2 kinds of this

Sql requirements in the sap development system, Which interface converts SQ...

Which interface converts SQL requirements in the SAP development system to those of the database? Database Interface converts SQL in the SAP.

Define dma, Define DMA. The transfer of data among a fast storage devic...

Define DMA. The transfer of data among a fast storage device such as magnetic disk and memory if often limited by the speed of the CPU. Removing the CPU from the path and letti

Define various types of shift registers, What are various types of Shi...

What are various types of Shift Registers ? Ans: Kinds of Shift Registers: (i) SISO that is Serial-In Serial-Out Shift Register (ii) SIPO that is Serial-In P

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