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

Data mining, what is data mining and what is its uses in a industry?

what is data mining and what is its uses in a industry?

Data packet from one network to another, A device that forwards data packet...

A device that forwards data packet from one network to another is known as a  Switch device.

Instruction level-parallelism based on granularity size, Instruction level ...

Instruction level This is the initial level and the degree of parallelism is uppermost at this level. The fine grain size is used at statement or instruction level as only few

Register organisation, The number and nature of registers is a major factor...

The number and nature of registers is a major factor which distinguishes among computers. For illustration, Intel Pentium has about 32 registers. A number of these registers are sp

Comparison between risc and cisc - computer architecture, Comparison betwee...

Comparison between risc and cisc - computer architecture: CISC  Emphasis on hardware  Includes multi-clock complex instructions  Memory-to-memory

Design an or to and gates combinational network, Design an OR to AND gates ...

Design an OR to AND gates combinational network and NAND only n/w for the following Boolean expression: A'BC'D + ABC'D' + A'B'CD' + A'BCD'

Is it possible to create graph form spreadsheets, Is it possible to create ...

Is it possible to create graph form spreadsheets For example IF G5 > 100 THEN "Y" ELSE "N" -  It's also possible to create graphs and charts from spreadsheets (such as using

What is visualisation - search based tools, Q. What is Visualisation - sear...

Q. What is Visualisation - search based tools? Visualization is a common method in contract to search based tools. In this scheme visual aids are supplied as pictures to help p

Write a subroutine in c for toggling the cursor, Write a subroutine in C fo...

Write a subroutine in C for toggling the cursor using old directives. ; ; use small memory model for C - near code segment _DATA SEGMENT WORD   'DATA'   CURVAL EQU   [B

Find gain in db of an amplifier has 600 ohm input resistance, An amplifier ...

An amplifier has an input resistance of 600 ohms and a resistive load of 75 ohms. When it has an rms input voltage of 100 mV, the rms output current is 20mA. Find the gain in dB.

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