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

Explain cell spacing and cell padding, Q. Explain Cell Spacing and Cell Pad...

Q. Explain Cell Spacing and Cell Padding? Couple of attributes known as CELLSPACING and CELLPADDING. Both are part of tag. CELLPADDING is the amount of space between

Why SS7 protocol is use, SS7 Protocol uses: (A) Out of band signalling...

SS7 Protocol uses: (A) Out of band signalling. (B) Associated signalling. (C) Speech control signalling. (D) No signalling. Ans: SS7 Protocol uses Out of

What the first part of the address identifies in e-mailbox, The first part ...

The first part of the address in electronic mailbox identifies? The first part of address in E-Mail identifies the user's mail box.

Colour management, There are three primary colours in pigments - Red, Yello...

There are three primary colours in pigments - Red, Yellow and Blue. There are two ways to produce more colours:   Physical Mixing: Physically mix colours to produce a new colour

Explain throughput performance and issues in pipelining, Throughput Thr...

Throughput Throughput of a pipeline may be defined as number of results which have been achieved per unit time. It can be referred as: T = n / [m + (n-1)]. c = E / c Th

Arduino Bingo Project., Hello everybody I have a project that is a bingo bo...

Hello everybody I have a project that is a bingo board run by laser pointers, light sensors, and leds. Basically I''m creating a 5 by 5 grid (bingo board) in which each row and col

Is it possible to decrease clock skew to zero, Is it possible to decrease c...

Is it possible to decrease clock skew to zero? Describe your answer? Even if there are clock layout strategies (H-tree) which can into theory reduce clock skew to zero by havi

What are the steps in multiplication algorithm, What are the steps in multi...

What are the steps in multiplication algorithm?   Check for zeros.   Multiply mantissas   Add the exponents.   Normalize the product.

write a ''c'' program to accept any 3 digit integer number, Write a 'C' pr...

Write a 'C' program to accept any 3 digit integer number from the keyboard and display the word equivalent representation of the given number

In what way interrupts are classified in 8085, 8085 the interrupts are clas...

8085 the interrupts are classified as Software and Hardware interrupts.

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