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

Give explanation about stored program control, Give explanation about Store...

Give explanation about Stored Program Control. Stored Program Control: In this centralized control, all the control equipment is replaced through a single processor that must

Explain level of a node, Level of a node The root is at level zero and ...

Level of a node The root is at level zero and the level of the node is 1 more than the level of its parent

Name the approaches used for generating the control signals, What are the t...

What are the two approaches used for generating the control signals in proper sequence? Hardwired control Micro programmed control

Explain about olap, OLAP is called as online analytical processing which gi...

OLAP is called as online analytical processing which gives answers to queries which are multi dimensional in nature. It composes relational reporting and data mining for giving sol

Example on passing parameters through stack, Q. Example on Passing Paramete...

Q. Example on Passing Parameters through Stack? PROGRAM: Version 3 DATA_SEG               SEGMENT                         BCD DB 25h; Storage for BCD test value BIN

How do the registers help in instruction execution, Q. How do the registers...

Q. How do the registers help in instruction execution? We will discuss this in following steps: Step 1: First step of instruction execution is to fetch instruction which

Types of classification-classification of parallel computers, Types Of Clas...

Types Of Classification The following classification of parallel computers have been recognized: 1)      Categorization based on the data streams and instruction 2)

Operating system., what is the minimum number of page faults for an optimal...

what is the minimum number of page faults for an optimal page replacement strategy?

Difference between finite automata and turing machine, What are the differe...

What are the difference between finite automata and Turing Machines?  Turing machine can alter symbols on its tape, while the FA cannot change symbols on tape.  Also  TM  has  a

What are the data types of vhdl, What are the Data types of VHDL VHDL....

What are the Data types of VHDL VHDL. A multitude of language or user defined data types can be used. This may mean dedicated conversion functions are needed to convert object

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