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

Perform subtraction in base 5 using r and r-1 complement, Q Write a menu dr...

Q Write a menu driven program to perform subtraction in base 5 using r and (r-1) complement with necessary validations.

How does the internet work, Every computer connected to Internet has a uniq...

Every computer connected to Internet has a unique address. Let's just say your IP address is 1.2.3.4 and you want to send a message to computer with IP address 5.6.7.8. Message you

Calculate width and height of the grid, Given a cell, we must determine its...

Given a cell, we must determine its neighbouring cells i.e. those with which it shares a wall. The cells with an x are the neighbours of the cell c. Write the function getneighbour

What is a linker program, What is a linker program? Ans. links the prog...

What is a linker program? Ans. links the program with other programs required for its execution is called a linker program.

How to manage the web based projects, How to manage the web based projects?...

How to manage the web based projects? Many project management applications contain additional functions useful in the management of group projects. These features may contain g

Difference among java beans & servlets, Java bean is a reusable component, ...

Java bean is a reusable component, where as the servlet is the java program which extends the server capability.

Internal organization of memory chip - computer architecture, Internal Orga...

Internal Organization of memory chip: Word line & bit lines 16x8 organization : 16 words of 8 bits per Form of an array

Explain the boolean equations for logic circuits, Explain The Boolean Equat...

Explain The Boolean Equations for Logic Circuits? A Boolean equation is the mathematical representation of a logic circuit using standard Boolean terms. All the logic gates (AND,

What is full form of bdc session, What is full form of BDC Session? Bat...

What is full form of BDC Session? Batch Data Communication Session.

Pipelined processor, Pipelined Processor Having discussed pipelining; n...

Pipelined Processor Having discussed pipelining; now we can describe a pipeline processor. A pipeline processor can be distinct as a processor that consists of a series of proc

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