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

What is the resolution of this DAC, A 5-bit DAC produces an output voltage ...

A 5-bit DAC produces an output voltage of 0.2V for a digital input of 00001. Find the value of the output voltage for an input of 11111. What is the resolution of this DAC? Ans

Alignment with your indents, Use Microsoft SQLServer to make the following ...

Use Microsoft SQLServer to make the following queries.  You should also download the Pirate Sports DM-DD that gives the fields for every table.  Be sure to use proper alignment wit

Pre-os and runtime sub-os functionality, In a raw Itanium, a 'Processor Abs...

In a raw Itanium, a 'Processor Abstraction Layer' (PAL) is incorporated in system. When it's booted PAL is loaded in the CPU and provides a low-level interface which abstracts a nu

Explain about the term- video conferencing, Video Conferencing Video co...

Video Conferencing Video conferencing continues to grow in popularity. Why is this? Some reasons are listed below: - Communication links are now much faster thus sound quali

Discuss functioning of different network access equipments, Discuss the fun...

Discuss the functioning of different network access equipments. The E1 multiplexers MX2000 and MX2411 and E1/T1 MX200 are giving multi interface user access to network PDH or S

C#, I have assignment about writing code in c# language this code to contro...

I have assignment about writing code in c# language this code to control the leds in the circuit board ..any idea

What is an abstract data type (adt), What is an Abstract Data Type (ADT)? ...

What is an Abstract Data Type (ADT)? Abstract data types or ADTs are a mathematical specification of a set of data and the set of operations that can be done on the data. They

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

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