Intel® Graphics Performance Analyzers (Intel® GPA)
Improve your game's performance by quickly specifying problem areas

Can I get GPU load via an API call in my application?

Abdellatif_Khindouf
3,386 Views
Hi,

I'm looking for get the GPU load (MFX and EU loads) inside my C++ application.
So is here any way to use the "DirectTraceSample" or anay other DLL to have access to such measure.

Best regards.
Abdellatif
0 Kudos
25 Replies
RBark3
Beginner
765 Views

I have gone to the Intel Platform Analysis Library web page MANY times, and requested a license/download instructions, but I NEVER get a reply, and I can not find any info on the site on how to download it.

Is this a dead project, or is Intel just awful at responding to requests???

 

0 Kudos
Giselle_G_Intel
Employee
765 Views

Hi Russ, 

This forum is for questions relating to Intel® GPA. I, unfortunately, do not have the answer to your question because of that reason. However, from looking around on the Intel website, it seems as though they no longer have support for the product.

Screen Shot 2017-07-06 at 2.05.04 PM.png

You can still download the metrics framework from the form you filled out (a link pops up after you approve the EULA). If you do want to double check with some other engineers, there is a premier support service that is actively monitored. The forums, for some products, are not as actively monitored by Intel® engineers and you may have better luck using the premier support services.

0 Kudos
RBark2
Beginner
765 Views

Ryan G. (Intel) wrote:

Hi Artur,

I think what you are looking for can be found here:

Intel® Metrics Framework - https://software.intel.com/en-us/node/659423

Intel® Platform Analysis Library - https://software.intel.com/en-us/intel-platform-analysis-library

I have been trying to write a server application to detect the current Intel QuickSync/MFX GPU resource utilization for servers with E3 CPUs running Windows Server.  I had found documentation for the Intel libraries above, and I used them to get the needed info on Windows 10, but when I tried to run the same software on Windows 2012 server, it didn't work.

Intel has not provided me with any info on how I can query the Intel HD/Iris GPU driver on Windows Server to get this information. 

Anyone have any ideas???

0 Kudos
Giselle_G_Intel
Employee
765 Views

Hi, 

I'm sorry you're having issues! Unfortunately, this forum is specifically for Intel® GPA related questions. We are not able to provide any support out of this scope. I would suggest looking through other forums that are more related to your topic. 

0 Kudos
Prokofyev__Vladimir
765 Views

Get the GPU usage in your application? Windows 10Pro, 64bit.

1) For NVIDIA card - nvml.dll

Manual here : https://docs.nvidia.com/deploy/pdf/NVML_API_Reference_Guide.pdf

This DLL-path (standard): C:\Program Files\NVIDIA Corporation\NVSMI\nvml.dll

Functions for GPU utilization monitoring :

  •  nvmlInit : function() :  Integer;  stdcall;
  •  nvmlShutdown : function() :  Integer;  stdcall;
  •  nvmlDeviceGetCount : function(pDevCount: pUInt) :  Integer;  stdcall;
  •  nvmlDeviceGetHandleByIndex : function (GPUnum : UInt;  pHandle: p_nvmlDevice_t) :  Integer;  stdcall;
  •  nvmlDeviceGetUtilizationRates : function (GPU_Handle1 : nvmlDevice_t;  pUtilization: p_nvmlUtilization_t) :  Integer;  stdcall;

2) For AMD card -  atiadlxx.dll

Manual here :  https://developer.amd.com/display-library-adl-sdk/

(html-format, in ADL_SDK_10.2.zip)

Functions :

  •  ADL_Main_Control_Create : function(  callback : pADL_MAIN_MALLOC_CALLBACK;    iEnumConnectedAdapters : Integer) :  Integer;   stdcall;
  •  ADL_Main_Control_Destroy: function() :  Integer;  stdcall;
  •  ADL_Overdrive5_CurrentActivity_Get: function(iAdapterIndex : Integer;    pActivity : pADLPMActivity) :  Integer;  stdcall;
  •  ADL_Adapter_NumberOfAdapters_Get : function(pNumAdapters : pInt) :    Integer;  stdcall;
  •  ADL_Adapter_Active_Get : function(iAdapterIndex : Integer;    pStatus : pInt) : Integer;  stdcall;

3) Example in Delphi XE8 64bit (+OpenCL1.2) here: http://gofile.me/2Zesj/C0f3wb1o

See please the Folder: OpenCL_Demo2017 Barrier and Local_Memory REDUCT

When you run this test program, both *.cpp-files must be near (in the same folder) as the *.exe-file !

(sorry, all comments in the *.pas-files in Russian only).

0 Kudos
Reply