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

Determine the types of software, Determine the types of software There ...

Determine the types of software There are two types of software today: Application and systems. Meaning of the two changes computer to computer. As we concentrate on large c

Massively parallel system and scalability, Massively Parallel System Re...

Massively Parallel System Refers to a parallel computer system having a great number of processors. The number in a great number of keeps increasing and currently it means more

What is cache memory, Q. What is Cache Memory? Cache memory is a very f...

Q. What is Cache Memory? Cache memory is a very fast and small memory between CPU and main memory whose access time is closer to processing speed of CPU. It behaves as a high-s

What are the two types of branch prediction techniques, What are the two ty...

What are the two types of branch prediction techniques available?  The two types of branch prediction methods are  1) Static branch prediction  2) Dynamic branch predicti

Why pic18f452 was used in the project designed, I have used the PIC18F452 m...

I have used the PIC18F452 microcontroller for both the main micro and the interface chip device because of it enhanced features that can be used to meet the specification required

Illustrate the accumulator architecture, Accumulator Architecture: An accu...

Accumulator Architecture: An accumulator is anespecially designated register which supplies one instruction operand and receives result. Instructions in such machines are usually

Illustrate about probability of collision, Illustrate about probability of ...

Illustrate about probability of collision? Probability of collision: There is a triangle and on this let’s assume that there are three ants one on each corner and are free t

Benefits of expert system to the user, a. It improves quality by providing ...

a. It improves quality by providing consistent advice and by making reduction in the error rate. b. Expert systems are reliable and they do not overlook relevant info

Explain debug monitors, Explain Debug monitors. Debug monitors give d...

Explain Debug monitors. Debug monitors give debugging support for a program. A debug monitor executes the program being debugged in its own control thereby giving execution e

Post interrupts - computer architecture, Post interrupts - computer archite...

Post interrupts - computer architecture: Post interrupts Exact interrupts examine interrupt bit on entering WB Longer latency Handle immediately

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