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 benefits of mainframe computers, Determine the benefits of ma...

Determine the benefits of mainframe computers Government agencies, large businesses, and universities usually use this type of computer. So: This computer is common t

Advantages & disadvantages of public-key cryptography, Advantages & Disadva...

Advantages & Disadvantages Enhanced security and convenience: private keys never require be transmitting or revealing to anyone.  They can givce a method for digital signatu

Explain magnetic read and write mechanisms, Q. Explain Magnetic Read and Wr...

Q. Explain Magnetic Read and Write Mechanisms? Data are recorded on and then retrieved from disk via a conducting coil called the head. In numerous systems there are two heads,

IT PMP project managemnet., Identify at least eight milestones for this pro...

Identify at least eight milestones for this project. Write a one-page paper describing each milestone using the SMART criteria?

Architecture of world wide web with the basic entities, Explain architectur...

Explain architecture of World Wide Web with the basic entities. The architecture of the World Wide Web, demonstrated below, is the one of clients, as like Netscape, Lynx or Int

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

Give some examples of malicious data.  In May 2002, the Norton Anti-Virus software for Windows operating systems detects about 61000 malicious programs. Some of them are named

What is strobe, What is Strobe. Asynchronous data are transfer among tw...

What is Strobe. Asynchronous data are transfer among two independent unit needs that control signals to be transmitted among the communicating units to indicate the time at whi

What do you meant by a storage device, Question : (a) What do you me...

Question : (a) What do you meant by a storage device? (b) List 5 examples of storage devices and give their uses (c) What are the differences between backup and ar

Define the terms - spatial locality and temporal locality, Define the terms...

Define the terms : spatial locality and temporal locality. Spatial Locality:  The spatial aspect means that instructions in close proximity to a recently implemented instruct

Define baud rate, Define baud rate The rate of data transfer in serial...

Define baud rate The rate of data transfer in serial data communication is signified in bps. Bits per second (bps) is the rate of transfer of information bits. Baud is the num

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