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

Functions displaying as ATL::ATL:: and missing source info

Kris_W_
Beginner
590 Views

For some reason the functions from some of my projects are just displaying as "ATL::ATL::", please see attached image.

Also for some of those functions I can see the timings for them but for others I can't... it just doesn't seem to be working correctly.

I have checked all the project settings and ATL is not being used and also I have done a clean and rebuild of the entire solution but to no avail.

Can anyone shed any light on some settings I might be missing?

0 Kudos
5 Replies
Vitaly_S_Intel
Employee
590 Views

Hi Kris!

Can you please check that generation of debug info (/Zi) is enabled for your project? I'm assuming this is native application and it doesn't use .NET?

Are you using Visual Studio compiler? Which version of VS do you use?

0 Kudos
Kris_W_
Beginner
590 Views

Yes debug information (/Zi) is enabled, and yes it's native. Using Visual Studio 2013 with Intel Compiler V15.

The only thing I can think of is because those functions/classes are in a lib that is later included in a DLL?

0 Kudos
Vitaly_S_Intel
Employee
590 Views

I believe you have a guess at least for some hotspots what actual function is hidden by ATL name. Are you able to break using debugger inside this function? Does debugger show correct name of this function in stack?

0 Kudos
Kris_W_
Beginner
590 Views

If I break in the function then several classes in that DLL are replaced with ATL::ATL ... it seems only this particular DLL is affected though, but we use MFC throughout the entire solution so not sure what is causing this.

>    SimEngine.dll!ATL::ATL::(long lCompound, long lOrgan, int StateIW, int StateEW, int StateCab, float Q, float Kp, float Vol, float CLint, float LiverBit, float & fTerm1, double[16][4][255] * m_DiffLtdParams, double metFormationRateIW) Line 4105    C++
     SimEngine.dll!ATL::ATL::(long lCompound, double * * SubTransporters, double[9] * m_DissolutionRate, double[9][255] * m_AdamParams, double[16][4][255] * m_DiffLtdParams) Line 368    C++
     SimEngine.dll!ATL::ATL::(SCData * pDS, std::vector<CPDQueueCoordinator *, std::allocator<CPDQueueCoordinator *> > & pQCoordinators, CPDProcessingStepRepository * pRepository, double * * SubTransporters, double[9][4][70] * m_Params, double[9] * m_DissolutionRate, double[9][255] * m_AdamParams, double[16][4][255] * m_DiffLtdParams, double * g, double * s, double t, AStates * aS) Line 2522    C++
     SimEngine.dll!ATL::ATL::(double dSimulationDuration, double * rates) Line 247    C++
     SimEngine.dll!ATL::ATL::(double dSimulationDuration, double * rates) Line 160    C++
     ODESolvers.dll!CRK4::SetIntegrationPars(double dItime, double dFtime, double StepSizeStart, double Eps, int MaxItrs, int fMethod) Line 564    C++
     SimEngine.dll!CDifferentialInteface::CalculateRKDiff(SCData * cSCData, unsigned int nIndividual, int RunType, int * bStopSim, CArray<CAdam *, CAdam *> * pAdamArray, CPDSupport * pPKPDSupport, std::vector<CPDQueueCoordinator *, std::allocator<CPDQueueCoordinator *> > & pQCoordinators, CPDProcessingStepRepository * pRepository) Line 463    C++

 

 

0 Kudos
Vitaly_S_Intel
Employee
590 Views

Thanks! It looks like compiler issue.

I can suggest to play with compiler options - change optimization level, disable any specific optimizations. I suspect you don't have this issue in Debug mode (no optimizations).

0 Kudos
Reply