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

How u can create xml file, How u can create XML file? To write Dataset ...

How u can create XML file? To write Dataset Contents out to disk as an XML file use: MyDataset.WriteXML(server.MapPath("MyXMLFile.xml"))

What is relational database, What is relational database? Relational da...

What is relational database? Relational database has data that is perceived as tables. A relational DBMS manages tables of data and associated structures that enhances the func

Define access time for magnetic disk, Define access time for magnetic disk....

Define access time for magnetic disk. The sum of seek time and rotational delay is known as access time for disks. Normal 0 false false false EN-IN

Explain priority interrupt, What is priority interrupt? A priority inte...

What is priority interrupt? A priority interrupt is an interrupt that establishes a priority over the various sources to verify which condition is to be serviced first when two

Write miss policy - cache memories, WRITE MISS POLICY:   Write allo...

WRITE MISS POLICY:   Write allocate   fetch on write   fetch entire block, then write word into block   allocate a new block on each writ   allocate block, but

View the site files, To see a high-level representation of the structure of...

To see a high-level representation of the structure of a local site, you use Dreamweaver's Site Map view. You can also use site map to add new files to the site, to add, remove and

Brief explanation of all elements in activity diagrams, ? Activities: An ac...

? Activities: An activity shows an action that performed in the system. ? Transitions: Transitions are shown by open arrow heads. Transitions are used to specify the flow among

Explain the method to identify the object classes, Explain the method to id...

Explain the method to identify the Object Classes You would always be careful while identifying relevant object classes from application domain. Objects may include physical e

Networking, compare 2g , 3g , and 4g also with advantage of 3g and 4g.

compare 2g , 3g , and 4g also with advantage of 3g and 4g.

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