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

Programming, Write a procedure for each of the following: (i) To find the m...

Write a procedure for each of the following: (i) To find the maximum MAX of the values in the list. (ii) To find the average MEAN of the values in the list. (iii) To find the produ

JAVA, HOW WAS JAVA INVENTED?

HOW WAS JAVA INVENTED?

What are the exceptions encountered for fp operation, What are the exceptio...

What are the exceptions encountered for FP operation? The exceptions encountered for FP operation are overflow, underflow. /0, inexact and invalid values.

What is "at exit-command", What is "at exit-command:? The flow logic K...

What is "at exit-command:? The flow logic Keyword at EXIT-COMMAND is a special addition to the MODULE statement in the Flow Logic .AT EXIT-COMMAND lets you call a module befor

Flow-between matrix layout problem, Solve the problem in page 346 of the pa...

Solve the problem in page 346 of the paper on cell formation by Boctor using the MIP method.  Use 4 cells and no more than 3 machines per cell. Solve the problem using the MIP m

How is EISA bus different from ISA bus, How is EISA bus different from ISA ...

How is EISA bus different from ISA bus? Extended Industry Standard Architecture (EISA) is a 32 bit modification to ISA bus. As computers became larger and had wider data buses,

Give some examples of malicious data, Give some examples of malicious data....

Give some examples of malicious data. In May 2002 year, the Norton Anti-Virus software for Windows operating systems detected around 61000 malicious programs. Several of them a

Java''s layout managers give over traditional windowing syste, Java uses la...

Java uses layout managers to lay out components in a consistent manner across all windowing platforms. As Java's layout managers aren't tied to absolute sizing and positioning, the

Main features of TCP, The main features of TCP are: Reliability: TCP...

The main features of TCP are: Reliability: TCP makes sure that any data sent by a sender arrives at destination as it was sent. There can't be any data loss or change in the

Rational schema, write the rational schema and draw it’s dependency diagram...

write the rational schema and draw it’s dependency diagram. Identify all dependencies.

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