Explain the commonly used code optimization techniques, Computer Engineering

Assignment Help:

Explain briefly any three of the commonly used code optimization techniques.

1. Common sub expression elimination:

In given expression as "(a+b)-(a+b)/4", in such "common sub-expression" termed to the duplicated "(a+b)". Compilers implementing such technique realize that "(a+b)" would not modify, and by itself, only compute its value once and use similar value next time.

2. Dead code Elimination:

Code which is unreachable or which does not influence the program (for example dead stores) can be removed. In the illustration below, the value assigned to i is never utilized, and the dead store can be removed. The first assignment to global is dead, and the third assignment to global is not reachable; both can be removed.

int global; void f (){ int i;

i = 1;          /* dead store */

global = 1;     /* dead store */

global = 2;

return;

global = 3;     /* unreachable */}

Below is the code fragment after dead code elimination.

int global;

void f (){ global = 2; return;}

3. 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 the commonly used code optimization techniques

What are the various address translation schemes, What are the various addr...

What are the various address Translation schemes? Explain which scheme is used in Internet? Translation from a computer's protocol address to a corresponding hardware address i

Cloud computing, what is the scope of doing a final year project on cloud c...

what is the scope of doing a final year project on cloud computing?

Explain parameter passing in procedures, Q. Explain Parameter Passing in Pr...

Q. Explain Parameter Passing in Procedures? Parameter passing is a very vital concept in assembly language. It makes assembly procedures more general. Parameter can be passed t

Write a c program to sort in ascending order of n numbers, Write a C progra...

Write a C program to sort in ascending order of n numbers. # include # include void main() { int a[25],no,i,j,m,t; clrscr(); printf("\nEnter Total number

Find the minimum sop and pos expression, Find the minimum SOP and POS expre...

Find the minimum SOP and POS expression for the following functions using Karnaugh Map and realize the expression using appropriate gates. Also realize SOP form using NAND-to-NAND

Write a bash-c shell script, Write a BASH/C shell script which takes a name...

Write a BASH/C shell script which takes a name of a directory as a command line argument, and prints unique login name of the users having files in that directory. Your code should

Mathlab , Windy Grid World This assignment is to use Reinforcement Learni...

Windy Grid World This assignment is to use Reinforcement Learning to solve the following "Windy Grid World" problem illustrated in the above picture. Each cell in the image is a

General use of cluster computing, Q. General use of cluster computing? ...

Q. General use of cluster computing? A general use of cluster computing is to balance traffic load on high-traffic web sites. In web operation a web page request is transmitted

What is inheritance, What is Inheritance? Inheritance is the method of ...

What is Inheritance? Inheritance is the method of deriving a feature of super class into sub class. Every sub class inherits the attributes, operations and association of its s

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