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

By which MTU is specified, MTU is specified by? MTU is specified by har...

MTU is specified by? MTU is specified by hardware technology.

Instruction cycle-flynn’s classification, Instruction Cycle The instruc...

Instruction Cycle The instruction cycle consists of a series of steps needed for the implementation of an instruction in a program. A typical instruction in a program is descri

Computer assignment problem, contributes to violence in our society. Others...

contributes to violence in our society. Others point out that television contributes to the high level of obesity among children. Now, we may have to add financial problems to the

Define e-commerce, Define e-commerce? The term 'electronic commerce' ha...

Define e-commerce? The term 'electronic commerce' has develop from electronic shopping, to imply all aspects of business and market processes enabled by the Internet and World

Determine by which digits are represented in dtmf phone, In a DTMF phone, d...

In a DTMF phone, digits are represented by: (A)  Orthogonal frequencies. (B)  Orthogonal Phases. (C)  Orthogonal codes. (D)  Orthogonal pulses. Ans: Di

What is mqseries channel, Channel means logical communication link. There a...

Channel means logical communication link. There are two parts of channels a) Message channel, b) MQI channel   1) Mesage channel use for communication among QMgr to Q

Types of assemblies, How many types of assemblies are there? Private, P...

How many types of assemblies are there? Private, Public/Shared, Satellite. A private assembly is normally used by a one application, and is stored in the application's director

Program which take input two images by homography, The goal of this questio...

The goal of this question is to create a program that takes as input two images that are related by a homography, and which "warps" the second image (piscine2.bmp) to align with th

Define compilers with high level programming language, Define Compilers wit...

Define Compilers with High Level Programming Language? All high-level programming language (except strictly interpretive languages) comes with a compiler. Effectively the compi

Show the connection between different networks, Q. Show the Connection betw...

Q. Show the Connection between different networks? The connection between different stages is made in following manner:  all outputs of 1 st crossbar switch of first stage a

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