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

Explain sequential sharing, Explain Sequential sharing. Sequential s...

Explain Sequential sharing. Sequential sharing: In this technique of sharing, a file can be shared through only one program at a time, it is file accesses by P1 and P2 are

Explain the program invisible registers, What are program invisible registe...

What are program invisible registers? Global and local descriptor tables are found in memory system. In order to specify and access the address of these tables, program invisi

#project, how to build PVR set-top box using raspberry

how to build PVR set-top box using raspberry

Techno hype - obstacle to information system, Techno hype - Obstacle to Inf...

Techno hype - Obstacle to Information System New technology has always been accompanied by a certain amount of euphoria that inevitably leads to unrealistic expectations place

Assembly language - computer architecture, Assembly language: An assem...

Assembly language: An assembly program has a series of instructions--mnemonics that relate to a stream of executable instructions, when translated by an assembler that may be

Define digital computers system, Q. Define Digital computers system? Di...

Q. Define Digital computers system? Digital computers, in general, are automatic machines that accept data and instructions, perform predefined operations very quickly on the d

Dynamic programing, a ship is loaded with a stock of 3 items each unit of i...

a ship is loaded with a stock of 3 items each unit of item n has a wt wn and vn the max cargo wt the ship can take is the details of 3items are item(n):1 2 3 wt(wn):2 3 1 value(vn)

Write an applet, Write an applet that can interact with both the HTTP clien...

Write an applet that can interact with both the HTTP client and HTML interpreter in a browser.  import java.applet.*; import java.net.*;                        // import pac

Obtain 1''s and 2''s complement, Obtain 1's and 2's complement of 1010 usin...

Obtain 1's and 2's complement of 1010 using only four-digit representation. Solution: 1's complement: 1's complement of 1010 is  Please note that wherever you ha

Water technology, Define end series and its application

Define end series and its application

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