Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Home » Tip Bank » C++
Language: C++
Expertise: Intermediate
Jul 19, 2001



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Nested For Loop Optimization

You can declare the counter of even the most deeply nested loop as a 'register' variable. For example:
for (int i = 0; i < 100; ++i)
	for (register int j = 0; j < 1000; ++j)   
		// This loop will be executed 100000 times 

The variable i will be accessed 100 times. However, j will be accessed 100,000 times. Hence, storing j in a machine register can give a significant performance boost, compared to storing i in a register. Storing both i and j in registers is even better. But the number of free registers available is very limited. It is perhaps best to declare the counter of the innermost loop as a register variable. Many compilers need this hint from the programmer, while others are clever enough to figure it out by themselves. Experiment with your compiler to decide whether this improves performance, because some compilers ignore the
Prashant Mhatre
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date