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

Explain arithmetic data processing instructions, Q. Explain Arithmetic Data...

Q. Explain Arithmetic Data Processing Instructions? These instructions carry outlogical and arithmetic operations on data. Arithmetic: The four fundamental operations are

Determine the list of micro-operations, Micro-Operations A micro-operat...

Micro-Operations A micro-operation is an basic operation which is performed on data stored in registers. We can classify micro-operations into four categories: 1. Register t

Define the identifiers of c language, Define the Identifiers of c language?...

Define the Identifiers of c language? In C the names of the functions, variables and arrays and various other user - defined items are called identifiers. The first character o

The goal of hashing, The goal of hashing is to produce a search that takes ...

The goal of hashing is to produce a search that takes   O(1) time

Analysis of amdahls law, Q. Analysis of Amdahls law? The conclusions of...

Q. Analysis of Amdahls law? The conclusions of analysis of Amdahl's law are: 1) To optimize performance of parallel computers modified compilers should be developed that sho

Object oriented systems analysis and design, Analysis and design form the b...

Analysis and design form the basis on any significant software artifact. Analysis is critical in terms of making sure that the final artifact actually meets user requirements (ie b

Differentiate between the serial port and parallel port, Question: (a) ...

Question: (a) Provide types of computer systems and briefly describe each one. (b) With the help of example, explain the difference between open source software, freeware a

Assembly directives and pseudo-ops, Assembly directives and pseudo-ops: ...

Assembly directives and pseudo-ops: Assembly directives are which instructions that executed by the assembler at assembly time, not by the CPU at run time. They can build the

What is functions indention, Use tabs to bring some structure into your fun...

Use tabs to bring some structure into your function body if(nPos > 1) then nRetrun = True else nRetrun = False end if

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

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