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 do you mean by interrupts, Q. What do you mean by Interrupts? The ...

Q. What do you mean by Interrupts? The term interrupt is an exceptional event which causes CPU to temporarily transfer its control from presently executing program to a separat

Memory system considerations - computer architecture, Synchronized with a c...

Synchronized with a clock signal Memory system considerations Speed Cost Size of chip Power dissipation Memory controller Refresh Overhead

#computer architecture, explain common bus system with the help of neat dia...

explain common bus system with the help of neat diagram in basic computer.

Explain sr latch with nand gate, Explain SR Latch with NAND Gate? SR La...

Explain SR Latch with NAND Gate? SR Latch has two useful states: Set state, when output Q=1 and Q'=0. Reset state, when output Q=0 and Q'=1.Output Qand Q' are normally

Algorithm, i need algorithm for padovan string

i need algorithm for padovan string

Provision for data buffering, Data buffering is quite helpful for purpose o...

Data buffering is quite helpful for purpose of smoothing out gaps in speed of processor and I/O devices. Data buffers are registers that hold I/O information temporarily. I/O is pe

What is CRC, In a frame transmission, CRC stands for? CRC stands for Cy...

In a frame transmission, CRC stands for? CRC stands for Cyclic Redundancy Check, in a frame transmission.

Types of security features employed in client server network, What are the ...

What are the types of security features employed in client server kinds of network? Security features employed in Client-Server types of network are as illustrated below: a)

What is the purpose of reserved word using in c#, A keyword that states the...

A keyword that states the types in a particular namespace can be referred to without requiring their full qualified type names. 'using' reserved word always come with namespace

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