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

Define cloud services with example, Define Cloud services with example. ...

Define Cloud services with example. Any web-based application or service offered by cloud computing is known as a cloud service. Cloud services can contain anything from calend

How does the computer execute a program, Let's attempt to answer a fundamen...

Let's attempt to answer a fundamental question: 'How does the Computer execute a Program?' Let's describe this with the help of an example from higher level language domain. Pr

Computer organisation, How many 32K X 1 RAM chips are needed to provide a m...

How many 32K X 1 RAM chips are needed to provide a memory capacity 256 kilobytes?

Explain routing tone in strowger telephony, Explain routing tone in strowge...

Explain routing tone in strowger telephony with waveforms and the timings. The call-in-progress tone or routing tone is a 400 Hz or 800 Hz intermittent pattern. In electromec

Enumerate about the specialised hardware, Enumerate about the Specialised h...

Enumerate about the Specialised hardware Specialised hardware such as protected memory or cryptographic memory module for storing and protecting the keys proves to be a good s

What is reduction, What is reduction?  A reduction is a way of changing...

What is reduction?  A reduction is a way of changing one problem into another in such a way that a solution to the second problem can be used to explain the first problem.

What are the advantages of code optimization, What are the advantages of co...

What are the advantages of code optimization? Code optimization tends at enhancing the execution efficiency of a program. It is achieved in two manners. Redundancies in a progr

Explain an exceptional handling in java with an example, Explain an excepti...

Explain an exceptional handling in java with the help of suitable example. Java exception handling is managed through five keywords: catch, try, throw, finally and throws. Th

Define the thread libraries, Q. Define the Thread libraries? The most d...

Q. Define the Thread libraries? The most distinctive representatives of shared memory programming models are thread libraries present in most of modern operating systems. Illus

Example of ann - artificial intelligence, Example of ANN - artificial intel...

Example of ANN - artificial intelligence: ANNs look like this:   Notice that the x, w, z and y represent actual valued weights and that every the edges in this graph

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