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

Perceptrons of artificial neural networks, Perceptrons: However the we...

Perceptrons: However the weights in any ANN are usually just real numbers and the learning problem boils down to choosing the best value for each weight in the network. Becaus

Which transistor is used in every cell of eprom, Floating gate Avalanche In...

Floating gate Avalanche Injection MOS (FAMOS) transistor is used in every cell of EPROM.

Explain about physical model, Explain about Physical model The Physical...

Explain about Physical model The Physical model describes concrete software and hardware components of system's context or implementation.

Calculate number of trunks for time multiplexed space switch, Calculate the...

Calculate the number of trunks that can be supported on a time multiplexed space switch given that, 32 channels are multiplexed in each stream, while the control memory access time

Test, what persistance shouold i use

what persistance shouold i use

Which translator perform macro expansion, Which translator perform macro ex...

Which translator perform macro expansion, is called? Ans. Macro pre-processor perform macro expansion.

Estimate the circuit switched network, a) Total available bandwidth = 1 Mbp...

a) Total available bandwidth = 1 Mbps = 1000 Kbps Each user requires send data at the rate of = 500 kbps As it is circuit switched network we have to dedicate the bandwidth So the

Explain process control block, Explain Process Control Block Process Co...

Explain Process Control Block Process Control Block (PCB): Information related with every process is stored in Process control Block. a) Process state b) Program counter c

Describe the properties of attributes and operations, Describe the properti...

Describe the properties of Attributesand operations Attributes are named slots for data values that belong to the class. Previously we have studied in MCS-024, different o

Show the features of collaboration systems, Q. What are basic features that...

Q. What are basic features that collaboration systems might have? ANSWER: Three basic features of collaboration systems are Web-conferencing, project management,

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