Analyzers
Talk to fellow users of Intel Analyzer tools (Intel VTune™ Profiler, Intel Advisor)
4974 Discussions

VTune shows LLC misses for code line with only "}"

T_C
Beginner
198 Views

I have double-clicked the name of a function in the bottom-up view and it shows me the source code for the function, along with individual metrics per line of code. I have code resembling:

std::vector<boost::shared_ptr<MyClass>> v = getVector();

for(boost::shared_ptr<MyClass> m : v){     //VTune shows no LLC misses here, but shows L2 bound misses

   a = b * c; //Metrics look fine for this row
   d = e * f; //Metrics look fine for this row

}  //VTune shows LLC misses for this line??

As you can see from my comments above, the VTune GUI display shows a LLC miss value for the end of the for-loop. How should I interpret this? At first I thought it was the for-loop itself, but as you can see from my code comments, there is a separate row showing the metrics for the start of the for-loop.

Help?

0 Kudos
1 Reply
TimP
Honored Contributor III
198 Views

Not knowing specifically what you're looking for, I'd suggest you try highlighting that source line and turning on assembly view to see which instructions the events became associated with, and whether VTune is in fact interpreting the debug symbols provided by the compiler in such a way as to associate those instructions with that source line.

It seems entirely possible that instructions associated with loop cleanup are waiting for cache misses to be resolved.

0 Kudos
Reply