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

An example of two stages network have switching elements, For two stages ne...

For two stages network the switching elements for M inlets with r blocks and N outlets with s blocks is given by (A) Ms + Nr                                (B)  Mr + Ns (

objectives- parallel computing, Objectives After going through this un...

Objectives After going through this unit, you will be able to : Tell historical facts of parallel computing; Can explain the essential concepts of the discipline, e.g.

What is artificial intelligence neural networks, For the sake of trying to ...

For the sake of trying to make intelligent behavior though really all that's being done is work with artificial neural networks where every cell is a very easy processor and the go

Define the types programmable logic devices?, Define the types Programmable...

Define the types Programmable logic devices? There are mostly three types PLDs. These are vary in the placement of fuses in the AND- OR array. 1. ROM- It has fixed AND array

Why a function should have at least one input, Why a function should have a...

Why a function should have at least one input? There is no strong reason for this in verilog. I think this restriction isn't removed fin SystemVerilog. Some requirements where

What is a breeder reactor, Q. What is a breeder reactor? 92 U 238 and...

Q. What is a breeder reactor? 92 U 238 and 90 Th 232 aren't fissile materials but are abundant in nature. In the reactor these are able to be converted into a fissile mater

Buses - computer architecture, Buses: Execution of 1 instruction ne...

Buses: Execution of 1 instruction need the following 3 steps to be performed by the CPU: I.  Fetch the contents of the memory location pointed at by the computer syst

What is tcas, tCAS is the number of clock cycles required to access a parti...

tCAS is the number of clock cycles required to access a particular column of data in SDRAM. CAS latency is the column address strobe time, sometimes referred to as tCL.

Build and evaluate a GAN based model using KERAS, I did not see an option r...

I did not see an option related to machine learning. so i selected computer engineering. Use different datasets such as: paintings by Picasso, Van Gogh, DaVinci

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