I am working with a program called NAMD, which uses a package called Charm++ to achieve multi-threading. I have used the Frame API to insert markers in the code. When I try to trace the code with Vtune, the collection phase works fine, but I get the following error from the analysis phase;
Failed to Finalize the Result
Error 0x40000026 (Database interface error) -- Precompute error
I don't get this error if I take out the frames.
You may refer to discussion on this thread.
It seemed that you inserted itt_domain for frame in function, which was called in multithreads? I suppose that one itt_domain can only be used in one thread.
We need more details to understand what was wrong in your case:
VTune version, how to you link ittnotify, what is the sequence of ITT notify calls, and ideally the result directory/traces.
You can contact me directly with the details: email@example.com
Thanks & Regards, Dmitry
That reminds me, and I say it here just for future reference: do NOT dynamically load the ittnotify DLL!! That is, don't write code to LoadLibrary() the DLL. It is already written in such a way that only a stub is loaded, by default, and the actual implementation is only loaded if executing under VTune Amplifier XE. If you attempt to load the DLL yourself, it won't work. Ask me how I know?! ;)