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

Which things should microprocessor validate, Q. Which things should micropr...

Q. Which things should microprocessor validate? A microprocessor should validate: Powerful addressing modes More addressing capability More throughput Po

Program for interchanging the values of two memory locations, Q. Program fo...

Q. Program for interchanging the values of two Memory locations? Program for interchanging the values of two Memory locations  ; input: Two memory variables of same size:

How do you track down a transition by name, Question 1: a) How do you ...

Question 1: a) How do you track down a transition by name? b) Why Premiere Pro is considered a non-linear editor? c) Explain clearly the main problem that may arise wh

Analysis the pc configuration, 1) Identify the software needs of each PC an...

1) Identify the software needs of each PC and whether or not anything needs to change. a. State the changes that you would make (and why) b. If no "change" needs to be made b

Electric typewriter in information distribution, Electric typewriter : Ele...

Electric typewriter : Electric typewriters are similar to standard typewriters but with an electronic motor taking the place of human energy. It is much faster than the standard m

What is interrupt vector table, Interrupt vector table is always created in...

Interrupt vector table is always created in first 1K area of the memory. Explain why? When CPU receives an interrupt type number from PIC, it uses this number to look up corres

What is typical storage hierarchy, Q. What is typical storage hierarchy? ...

Q. What is typical storage hierarchy? A typical storage hierarchy is displayed in Figure above. Though Figure shows only block diagram however it includes storage hierarchy:

Sites are useful to the target audience members, Normal 0 false...

Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4 Select a range of a

Java, what is inheritence and all types in java?

what is inheritence and all types in java?

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