First of all, please let me know what system you are running on -- right-click on the GPA Monitor in the notification tray and select "About..." and copy that info here.
Next, please right-click on the GPA Monitor in the notification tray, select the "Profiles" menu item and the "Domains" tab, and be sure to check all domains that are listed. Also, please let me know what options you've selected in the "General" tab.
Windows 7, 64-bit DEP enabledNum Processors: 8Memory: 6135MBSystem BIOS: American Megatrends Inc. 0404 (02/27/2009)Video BIOS: Version 70.24.11.00.01 (01/15/11)Driver 0: Device: NVIDIA GeForce GTX 560 Ti Provider: NVIDIA Date: 9-22-2011 Version: 184.108.40.20638 VendorId: 10de ProductId: 1200 Stepping: a1 No support for GPA InstrumentationGPA install directory: C:\Program Files\Intel\GPA v4.2\GPA version: 4.2.155414Current user is in Administrators group: YES
I have only one profile, default:
In General Tab:
Enable tracing : ticked
DirectX Data Level: Detailed
Internal Data Level: On
Buffer Size : 50 MB
Capture Application startup : False
Capture Hardware Context data : True
In Domains Tab:
There are no domains for me to select, the list is empty.
I did some digging and found that the current version of Intel TBB uses a different instrumentation API than is used by Intel GPA. In other words, you won't be able to capture any TBB activity in the Intel GPA trace file, so you won't see individual Intel TBB threads and tasks within Intel GPA Platform Analyzer.
The best option for you at this time is to instrument your key game threads and modules using the Intel GPA ITT API, as documented in the Intel GPA SDK Reference Guide (available from the Intel GPA "Start" menu). You'll then see task activity within your game for those sections of your game code that you instrument. But if you do want to use both Intel TBB and the new ITT API, you'll have to undefine the DO_ITT_NOTIFY
pre-processor symbol by removing /DDO_ITT_NOTIFY from the compiler
command line in the build configuration (this is needed to avoid a name collision that occurs with the two different instrumentation API's).
NOTE: There was a version of Intel TBB that had been instrumented with the "old" TAL API used by older versions of Intel GPA. But nobody has modified the Intel TBB libraries to use the new ITT API, and I've not heard of any specific plans to do this.
I know this may not be the answer you wanted to hear, but that's the latest information that I have.
I've expected that it might come to instrumenting manually, I was just a bit confused by the fact that I saw a few older presentations mainly from Game Developer Conference, where it was said that TBB was instrumented for use with GPA. It was actually also told that TBB is pre-instrumented for GPA by Intel engineer at GDC Europe this August, who also did a presentation about GPA there. It seems there is a bit of miscomunication about status of things between the TBB team and the GPA team :).
Anyways, thank you again for clarifing the situation and I will utilise ITT API for instrumentation.
I apologize for the misinformation on Intel TBB and Intel GPA.
Can you provide me some more information about the engineer you contacted at GDC Europe? I'll follow-up with the engineer and the Intel TBB team to see whether there's some new information about Intel TBB instrumentation to see what's available. Also, I'll update the older Intel GPA document on the site to let people know that Intel TBB is no longer compatible with the latest version of Intel GPA.
By the way, I know Intel GPA works with OpenCL -- is this something that might be useful for you as an alternative?
Actually I guessed that it was Philipp that you talked to, and the two of us have had email correspondence on this topic today. We also reconfirmed with others that Intel TBB is not compatible with the current version of Intel GPA.
I also modified the article that talks about using Intel TBB and Intel GPA to mention the incompatibility.
As to OpenCL, please see this article about Intel GPA and OpenCL.
Thanks again for your use of Intel GPA, and please let me know if there's anything else I can help with.
PS-> Philipp is a great engineer with a strong game development background, and he's a real expert in using Intel GPA. So be sure to talk to him when you see him again at a conference, as I'm sure he can provide some great tips on game development analysis and optimization.