1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

GPUMonitor Sidebar Gadget

Discussion in 'MSI AfterBurner Overclock Application Discussion' started by stangowner, Mar 21, 2010.

  1. stangowner

    stangowner Master Guru

    Messages:
    606
    Likes Received:
    10
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    Great. That is also the correct file for Afterburner.

    This is normal. It should not show in the desktop.

    Can you please tell me if this file exists? If so, please post the contents or email me the file:
    C:\Users\<username>\AppData\Local\Temp\GPUMonitor.log"
     
  2. ablev

    ablev Member Guru

    Messages:
    104
    Likes Received:
    7
    GPU:
    XFX RX 580 SE
    I have no GPUMonitor.log in my temp folder.
    The only, that i´ve found is this.
    [​IMG]

    ablev
     
    Last edited: Apr 25, 2010
  3. stangowner

    stangowner Master Guru

    Messages:
    606
    Likes Received:
    10
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    Can you close the gadget? Then confirm GPUMonitor.exe is no longer in the process list (closing the gadget should remove it). Delete that file. Then reopen the gadget. Do you have a GPUMonitor.log file now? And does the gadget work properly?
     
  4. ablev

    ablev Member Guru

    Messages:
    104
    Likes Received:
    7
    GPU:
    XFX RX 580 SE
    I have all done, but no GPUMonitor.log file.
    Now i have deinstall and reinstall the gadget, but no GPUMonitor.log file.

    ablev
     

  5. stangowner

    stangowner Master Guru

    Messages:
    606
    Likes Received:
    10
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    There must be something on your system preventing GPUMonitor.exe from creating a file in your temp directory.

    I'm assuming your temp directory is "C:\Users\<username>\AppData\Local\Temp" based on your previous response. But can you confirm this by opening a command prompt and entering: echo %temp%

    Also, can you run procmon and filter for GPUMonitor.exe as pictured? Perhaps this will indicate if there is indeed a problem writing that file.
     
  6. stangowner

    stangowner Master Guru

    Messages:
    606
    Likes Received:
    10
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    I got your files. I have good news and bad news.

    Good news: I can reproduce the memory leak problem using your configuration.
    Bad news: I can reproduce the memory leak problem using your configuration.

    I have not had a chance to look into it yet, but will do so shortly. Just wanted to let you know the status.
     
  7. stangowner

    stangowner Master Guru

    Messages:
    606
    Likes Received:
    10
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    Erm, can you please do the following and let me know if it resolves the memory usage problem?

    1. Close the gadget
    2. Delete this file: "C:\Users\<username>\AppData\Local\GPUMonitor\prefWindow_0.json"
    3. Open the gadget
    This will change the main gadget settings back to default (background color, border, etc). I don't see anything wrong with the settings in this file, but allowing the gadget to recreate it by itself and not changing any of the settings prevents the memory usage problem. I'm still looking into why your file may be bad/damaged, but would like you to confirm it resolves the issue for you. This gadget has had over 1/2 million downloads, and no one has complained of memory usage problems. I'll let you know if I can track down what the exact problem may be.
     
  8. erm

    erm Master Guru

    Messages:
    386
    Likes Received:
    0
    GPU:
    GeForce GTX 560 1GB
    thanks, I did as you said, now the memory is stable 13MB ... waiting for good news:)
     
  9. stangowner

    stangowner Master Guru

    Messages:
    606
    Likes Received:
    10
    GPU:
    2xMSI N550GTX-Ti Cy II OC
  10. erm

    erm Master Guru

    Messages:
    386
    Likes Received:
    0
    GPU:
    GeForce GTX 560 1GB
    I finally solved the problem, the cause was just sideshow but I do not use and do not know why he was active looool ..... I put the backup file prefWindow_0.json and now after 24 h, the memory is stable at 20MB. thank you very much :banana:
     

  11. stangowner

    stangowner Master Guru

    Messages:
    606
    Likes Received:
    10
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    Thanks for the reply. Although I can reproduce the problem with your config and sideshow, I can not cause it to happen with my config, as well as a few others I've tried. So I'm still not sure where the problem lies exactly.....but it does not affect everyone using sideshow.
     
  12. Perro del Mal!

    Perro del Mal! Member

    Messages:
    31
    Likes Received:
    0
    GPU:
    HD5770 Vapor-X Crossfire
    Is there a way to get the gadget to show Everest data, like with Rivatuner? I used to monitor everything down to case fans rpm's with it, but since my 5770's are not supported by Riva, I'm only left with the GPU's data.
     
  13. stangowner

    stangowner Master Guru

    Messages:
    606
    Likes Received:
    10
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    Sorry, there is no plug-in support in Afterburner. So you'll only get what is available natively in the application.
     
  14. eternitykh

    eternitykh Master Guru

    Messages:
    323
    Likes Received:
    0
    GPU:
    EVGA GTX 670 FTW+ 4GB SLI
    Anyone know why after i set TEMP and TMP folder to run on my ramdisk, the side bar gadget gives errors reading data?

    any solutions?
     
  15. stangowner

    stangowner Master Guru

    Messages:
    606
    Likes Received:
    10
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    What is the exact error it is giving?
     

  16. eternitykh

    eternitykh Master Guru

    Messages:
    323
    Likes Received:
    0
    GPU:
    EVGA GTX 670 FTW+ 4GB SLI
    on the gadget it just says error, cannot read data. and when i check monitor in afterburner, it's reading fine, just wont show anything on the gadget.

    and everything works perfectly fine if i set my TEMP folder back to C: (from environment settings)
     
  17. stangowner

    stangowner Master Guru

    Messages:
    606
    Likes Received:
    10
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    Can you tell me if GPUMonitor.exe is in the process list and if the file %TEMP%\GPUMonitor.log exists in the new location? If the file does exist, what are the contents?
     
  18. eternitykh

    eternitykh Master Guru

    Messages:
    323
    Likes Received:
    0
    GPU:
    EVGA GTX 670 FTW+ 4GB SLI
    i believe when i checked, yes gpumonitor.exe was in the process list, and no the log file did not exist in new location.

    i have switched back to C: for temp for the time being so i can see my gadget correctly, but i checked those before i switched back, i couldn't figure it out.
     
  19. stangowner

    stangowner Master Guru

    Messages:
    606
    Likes Received:
    10
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    If that file does not exist, I would expect to see the error: "RivaTuner Hardware Monitor data not found." If it is there, but cannot be opened for reading or cannot be parsed for valid content, then you would get "Could not read GPU Monitor data.".....which is what you said you are getting, correct?

    If you run Process Monitor and filter for GPUMonitor.exe it should show the file access attempts. Can you run that and see if you get results like mine below
    http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx

    Code:
    5:29:39.0741975 AM    GPUMonitor.exe    4204    CreateFile    C:\Users\Nick\AppData\Local\Temp\GPUMonitor.log    SUCCESS    Desired Access: Generic Write, Read Attributes, Disposition: OverwriteIf, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: 0, OpenResult: Overwritten
    5:29:39.0744425 AM    GPUMonitor.exe    4204    WriteFile    C:\Users\Nick\AppData\Local\Temp\GPUMonitor.log    SUCCESS    Offset: 0, Length: 17, Priority: Normal
    5:29:39.0745401 AM    GPUMonitor.exe    4204    WriteFile    C:\Users\Nick\AppData\Local\Temp\GPUMonitor.log    SUCCESS    Offset: 17, Length: 75
    5:29:39.0745997 AM    GPUMonitor.exe    4204    WriteFile    C:\Users\Nick\AppData\Local\Temp\GPUMonitor.log    SUCCESS    Offset: 92, Length: 81
     
  20. Unwinder

    Unwinder Moderator Staff Member

    Messages:
    14,263
    Likes Received:
    1,318
    Hi Nick,

    New version of Afterburner will improve shared memory format to make access to Afterburner's hardware monitoring data more convenient. The following changes in shared memory format are already implemented:

    Code:
    /////////////////////////////////////////////////////////////////////////////
    //
    // This header file defines MSI Afterburner Hardware Monitoring shared memory format
    //
    /////////////////////////////////////////////////////////////////////////////
    #ifndef _MAHM_SHARED_MEMORY_INCLUDED_
    #define _MAHM_SHARED_MEMORY_INCLUDED_
    /////////////////////////////////////////////////////////////////////////////
    // v2.0 header
    typedef struct MAHM_SHARED_MEMORY_HEADER
    {
    	DWORD	dwSignature;
    		//signature allows applications to verify status of shared memory
    
    		//The signature can be set to:
    		//'MAHM'	- hardware monitoring memory is initialized and contains 
    		//			valid data 
    		//0xDEAD	- hardware monitoring memory is marked for deallocation and
    		//			no longer contain valid data
    		//otherwise the memory is not initialized
    	DWORD	dwVersion;
    		//header version ((major<<16) + minor)
    		//must be set to 0x00020000 for v2.0
    	DWORD	dwHeaderSize;
    		//size of header
    	DWORD	dwNumEntries;
    		//number of subsequent MAHM_SHARED_MEMORY_ENTRY entries
    	DWORD	dwEntrySize;
    		//size of entries in subsequent MAHM_SHARED_MEMORY_ENTRY entries array
    	time_t	time;
    		//last polling time
    
    	//WARNING! The following fields are valid for v2.0 and newer shared memory layouts only
    
    	DWORD	dwNumGpuEntries;
    		//number of subsequent MAHM_SHARED_MEMORY_GPU_ENTRY entries
    	DWORD	dwGpuEntrySize;
    		//size of entries in subsequent MAHM_SHARED_MEMORY_GPU_ENTRY entries array
    
    } MAHM_SHARED_MEMORY_HEADER, *LPMAHM_SHARED_MEMORY_HEADER;
    /////////////////////////////////////////////////////////////////////////////
    #define	MAHM_SHARED_MEMORY_ENTRY_FLAG_SHOW_IN_OSD				0x00000001
    	//this bitmask indicates that data source is configured to be displayed in On-Screen Display
    #define	MAHM_SHARED_MEMORY_ENTRY_FLAG_SHOW_IN_LCD				0x00000002
    	//this bitmask indicates that data source is configured to be displayed in Logitech keyboard LCD
    #define	MAHM_SHARED_MEMORY_ENTRY_FLAG_SHOW_IN_TRAY				0x00000004
    	//this bitmask indicates that data source is configured to be displayed in tray icon
    /////////////////////////////////////////////////////////////////////////////
    #define MONITORING_SOURCE_ID_UNKNOWN							0xFFFFFFFF
    #define MONITORING_SOURCE_ID_GPU_TEMPERATURE					0x00000000
    #define MONITORING_SOURCE_ID_PCB_TEMPERATURE					0x00000001
    #define MONITORING_SOURCE_ID_FAN_SPEED							0x00000010
    #define MONITORING_SOURCE_ID_FAN_TACHOMETER						0x00000011
    #define MONITORING_SOURCE_ID_CORE_CLOCK							0x00000020
    #define MONITORING_SOURCE_ID_SHADER_CLOCK						0x00000021
    #define MONITORING_SOURCE_ID_MEMORY_CLOCK						0x00000022
    #define MONITORING_SOURCE_ID_GPU_USAGE							0x00000030
    #define MONITORING_SOURCE_ID_MEMORY_USAGE						0x00000031
    #define MONITORING_SOURCE_ID_GPU_VOLTAGE						0x00000040
    #define MONITORING_SOURCE_ID_AUX_VOLTAGE						0x00000041
    #define MONITORING_SOURCE_ID_MEMORY_VOLTAGE						0x00000042
    #define MONITORING_SOURCE_ID_FRAMERATE							0x00000050
    /////////////////////////////////////////////////////////////////////////////
    // v2.0 entry (main array of entries follows immediately by the header)
    typedef struct MAHM_SHARED_MEMORY_ENTRY
    {
    	char	szSrcName[MAX_PATH];
    		//data source name (e.g. "Core clock")
    	char	szSrcUnits[MAX_PATH];
    		//data source units (e.g. "MHz")
    
    	char	szLocalizedSrcName[MAX_PATH];
    		//localized data source name (e.g. "Частота ядра" for Russian GUI)
    	char	szLocalizedSrcUnits[MAX_PATH];
    		//localized data source units (e.g. "МГц" for Russian GUI)
    
    	char	szRecommendedFormat[MAX_PATH];
    		//recommended output format (e.g. "%.3f" for "Core voltage" data source) 
    
    	float	data;
    		//last polled data (e.g. 500MHz)
    		//(this field can be set to FLT_MAX if data is not available at
    		//the moment)
    	float	minLimit; 
    		//minimum limit for graphs (e.g. 0MHz)
    	float	maxLimit;
    		//maximum limit for graphs (e.g. 2000MHz)
    
    	DWORD	dwFlags;
    		//bitmask containing combination of MAHM_SHARED_MEMORY_ENTRY_FLAG_...
    
    	//WARNING! The following fields are valid for v2.0 and newer shared memory layouts only
    
    	DWORD	dwGpu;
    		//data source GPU index (zero based)
    	DWORD	dwSrcId;
    		//data source ID
    
    } MAHM_SHARED_MEMORY_ENTRY, *LPMAHM_SHARED_MEMORY_ENTRY;
    /////////////////////////////////////////////////////////////////////////////
    // v2.0 GPU entry (array of GPU entries follows immediately by the main array)
    typedef struct MAHM_SHARED_MEMORY_GPU_ENTRY
    {
    	char	szDevice[MAX_PATH];
    		//device description (e.g. "NVIDIA GeForce GTX 580")
    	char	szDriver[MAX_PATH];
    		//driver description (e.g. "ForceWare 262.99")
    	char	szGpuId[MAX_PATH];
    		//GPU identifier (represented in VEN_xxxx&DEV_xxxx&SUBSYS_xxxxxxxx&REV_xx&BUS_x&DEV_x&FN_x format)
    
    } MAHM_SHARED_MEMORY_GPU_ENTRY, *LPMAHM_SHARED_MEMORY_GPU_ENTRY;
    /////////////////////////////////////////////////////////////////////////////
    
    Do you need anything else or have any wishes?
     

Share This Page