Unroll Loops to Optimize Your Code

Unroll Loops to Optimize Your Code

A compiler can automatically optimize the code by unrolling loops. Consider this code:

   int *buff = new int[3];  for (int i =0; i

On every iteration, the loop assigns a value to the next array element. However, precious CPU time is also wasted on testing and incrementing the loop counter, and performing a jump statement. To avoid this overhead, the compiler can unroll the loop into a sequence of three assignment statements:

   buff[0] = 0;   buff[1] = 0;   buff[2] = 0; 

This way, you avoid the unnecessary overhead of a loop. Note, however, that the compiler applies this optimization automatically; you shouldn't do it yourself.


Share the Post: