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

Design a 3-bit counter using sequential logic, Q. Design a 3-bit counter us...

Q. Design a 3-bit counter using sequential logic with following counting sequence using JK- flip-flops which counts the sequence 0, 3, 2, 7, 5 and repeat.

Backward chaining - artificial intelligence, Backward Chaining - Artificial...

Backward Chaining - Artificial intelligence Given that we are just interested in constructing the path, we may set our initial state to be the theorem statement and search backw

Show the categories of web browser, Q. Show the categories of Web browser? ...

Q. Show the categories of Web browser? The two basic categories of Web browser are: • Text-only browsers: A text-only browser like Lynx allows you to view Web pag

Determine the decimal equivalent of binary 1100 ?, The decimal equivalent o...

The decimal equivalent of (1100) 2   is ? Ans. (1100) 2 = (12) 10

Neural networks, Given a collection of DNA sequences (it can be downloaded ...

Given a collection of DNA sequences (it can be downloaded in the assignment directory), where true binding sites as positive examples have been provided. The objective of this assi

Can the size of an array be declared at runtime, Can the size of an array b...

Can the size of an array be declared at runtime?              No, the size of an array can't be declared at run time, we always require to mention the dimensions of an array at

Analysis of sort bitonic, Analysis of Sort_Bitonic(X) The bitonic sorti...

Analysis of Sort_Bitonic(X) The bitonic sorting network needs log n number of phases for performing task of sorting the numbers. The first n-1 phases of circuit can sort two n/

Additions of numbers by using 2’s complement, Add +25 to -15 by using 2's c...

Add +25 to -15 by using 2's complement ? Ans. Firstly convert the numbers 25 and 15 in its 8-bit binary equivalent and determine the 2's complement of 15, after that add +25 to -

Define diffrent aspects of a system, Q. Define diffrent aspects of a System...

Q. Define diffrent aspects of a System? The aspects of a System are as below: Organization implies order and structure. It is aprearrangement of components which helps t

Determine about the locator devices, Determine about the Locator Devices ...

Determine about the Locator Devices Mouse  A mouse is small hand-held box used to position the screen cursor. Wheels or rollers on the bottom of the mouse can be used to r

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