Skip to content

@JeremyMain JeremyMain released this May 6, 2019 · 4 commits to master since this release



  • When GPUProfiler is running using the command line arguments to automatically collect and save data without user input, if a user logs off of the session or a shutdown event occurs, the collected data will be saved before the session is terminated at the path specified by the command line arguments. (#97 , #114 )

Bugs fixed:

  • Opening GPD file from an email attachment fails (#99)
  • Spaces in CSV output preceding values (#118)
  • Resizing window causes zoomed view to display full (#112)
  • Selective display hotkey operations cause zoomed view to display full (#111)
  • GPU encode/decode utilization may not be displayed when loaded from a saved file (#116)
Assets 3

@JeremyMain JeremyMain released this Feb 15, 2019 · 5 commits to master since this release


New features for this release:

  • Multi-GPU support: #103
  • Windows Server session count : #94, #83
  • Remoting protocol FPS, RTT metrics (with hardware and software encode) : #101
    • Citrix HDX
    • Teradici PCoIP
    • VMware Blast

#104 : Graph drawing performance
#108 : Multi-GPU and Protocol metrics CSV export

Bugs fixed:
#93 : Exception error while restoring from tray icon during monitoring
#70 : Citrix Client version query failure when running as a XenApp published application

Assets 3

@JeremyMain JeremyMain released this May 17, 2018 · 7 commits to master since this release

Removed the download module as this release is superseded by the v1.06a release

New features

Continuous monitoring function (fixed 1 second interval, 5 minutes ) #32
Stopping the monitor will allow you to save the data
Enable value/utilization inspector during active profiling or monitoring

Bugs fixed

Incorrect x axis time duration label for intervals > 1 second #86
UI related fixes #87 #82

Assets 2

@JeremyMain JeremyMain released this May 27, 2018 · 7 commits to master since this release

Bug fix version of v1.06, no new features added.

Corrects the following bugs:
#89 : Process utilization not shown during profiling or monitoring
#90 : Application exception on launch when running on Windows Server 2016
#91 : Exception error while using data inspector within areas not yet containing profile data
#92 : Monitor mode values not correct during scrolling, utilization values are correct

Assets 3

@JeremyMain JeremyMain released this Feb 28, 2018 · 8 commits to master since this release

Bug fix release



  • Exception error when loading saved GPD file via explorer file association #68
  • Incorrect header in CSV output #69
  • Automatic timed series profiling works only on first loop #72
  • Automatic timed series profiling, file path handling improvement #73
  • Fallback to NVAPI where NVML functionality is limited and restricts accurate utilization metrics (frame buffer reported to be 100% utilized) #74
  • Suppress warning dialog(s) when GPUProfiler is run before the driver is loaded after installation (reboot requirement not met) #75
  • Process utilization header "FRB" -> "MC" the values returned from NVML include the memory controller utilization and not the Framebuffer utilization #76
  • Show the total memory controller utilization in the "_TOTAL" line #76
Assets 3

@JeremyMain JeremyMain released this Sep 5, 2017 · 9 commits to master since this release

The latest release of GPUProfiler v1.05 is finally available.

New Features

  • Dark UI theme (light theme can be enabled in options) #50

  • Automated timed series profiling via command line options #55

Flag Type Max Value Description
-i int 60 Sample interval
-d int 3660 Profile duration (in minutes)
-r int 500 Repeat (number of times)
-f string Output path/filename.
-t Append time stamp
-m Minimize during profiling
-x Exit on completion

Example usage:
GPUProfiler.exe -i 1 -d 30 -r 10 -f c:\tmp\profile.gpd -t -m -x

  • Run in TaskTray option added #56 | #58

  • Retain user defaults in the registry and load on startup #37 | #38 | #50 | #54

    • Default interval, duration, plot bold level as well as the application standard and dash-view window sizes /positions are also saved.
  • Remoting Agent version detection (Citrix / VMware) #25 | #26 | #31

  • GPU WDDM or TCC mode detection #43

  • Display total visible time in X-axis for assisting you visual and logical orientation within the plot.

New Monitoring Capabilities

  • Per-Process GPU utilization monitoring (currently not serialized in the GPD file, no graph support -yet)
    • Maxwell/Pascal generation GPUs for Virtual Machines and workstations (Kepler physical machine support is untested)
    • This requires NVIDIA driver version 385.41 or later


  • Improved DPI scaling support, 100%, 125%, 200% #40
  • Default profile view displays the first 60 samples and scrolls from then on #57
  • Improved display performance for longer profile runs.
  • Two step bolding of the individual plot lines, (third step is to hide it) hotkey ‘g’ for GPU, etc. #22
  • Three step bolding of the plot lines (hotkey ‘b’) #41
  • Legend display toggle (hotkey 'l') #42
  • Dash-view automatically hides legend and Axis labels #42
  • Resource utilization histogram update when visible data range changes
  • Arrow keys translate within the plot view
  • Ctrl+up (zoom in), Ctrl+down (zoom out)
  • 4 state 'Home' and 'End' functions
    1. Zoom all
    2. Show first / last 50% of total
    3. Show first / last 25% of total
    4. Show first / last 13% of total.
  • 'Page Up' / 'Page Down' translate along the X-Axis

There are other small changes from v1.04 that I have made, and as with all new releases, there are corner cases that I have not completely tested and would appreciate any discovered bugs to be added to the Issues page.
New feature requests can be added and tracked there as well.

Assets 3

@JeremyMain JeremyMain released this Jan 11, 2017 · 9 commits to master since this release

I have completed implementing and testing all of the new enhancements to the 1.04 release of GPUProfiler.
gpuprofiler 1 04

A short list of changes from v1.03 -> 1.04

  • In-graph display of utilization data in percentage or actual value for loaded files and for post collection results
  • Scroll, pan and zoom support via mouse wheel.
  • Re-sizable windows, size retained for each mode (normal/dashboard)
  • Dashboard mode via double clicking on the graph (revert to prior view via same method)


  • Resource histogram analysis analyzes the current visible time range (zoom in to examine a particular operation’s resource utilization)
  • Improvement in histogram calculation and handling of 100% and 0% values.
  • Histogram width increased to give better visibility
  • Selective display of histogram data based on current data display options
  • Double clicking each histogram toggles between auto-scale and fixed scale mode
    -- Fixed scale
    -- Automatic scale
  • Keyboard accelerators to show/hide the graph data in the plot, data tooltip and the histogram:
    -- 'C' - CPU
    -- 'R' - RAM
    -- 'G' - GPU
    -- 'F' - Framebuffer
    -- 'E' - Video Encoder
    -- 'D' - Video Decoder
  • The Analysis (histogram) can be shown or hidden with
    -- 'A' - Analysis
  • When data is loaded these hotkey control the display of utilization information when the mouse is within the graph results:
    -- 'U' - Utilization
    -- 'V' - Values (and utilization where appropriate)
  • Dependencies have been statically linked to remove the prior requirement to install Visual Studio redistributables
  • ‘GPD’ file associations are set on startup based on current executable path, GPD file icon added as well.
  • Zoom full to profile overview when profile collection has been completed
  • Removed checks that prevented the application from running in environments without NVML or an NVIDIA GPU
  • Improved scrolling/panning during profiling when in a zoomed view state
  • Multi GPU collection and support in the GPD data file but no current display in the UI
  • Added a disclaimer for my employer (thank you Rachel) in the about box
  • Font improvements to handle large DPI display users


Assets 3
Sep 7, 2016

@JeremyMain JeremyMain released this Sep 29, 2016 · 11 commits to master since this release

Minor update

  • Corrected graph issue with multi-GPU workstations
  • Changed analysis view to not displayed by default

gpuprofiler v1 03_vp12

gpuprofiler v1 03

Assets 3

@JeremyMain JeremyMain released this Sep 6, 2016 · 12 commits to master since this release



New features

  • Resource utilization histograms
  • Resizable window, minimize/maximize
  • NVML and x64 support only (x86 users should continue to use 1.01 version)
  • Video Encode/Decode utilization
  • vGPU GPU utilization
  • Add always on top option
  • Add minimize on profiling start option


  • Switched to NVML to use advanced monitoring features unavailable in NVAPI
  • Support for x86 ends due to lack of NVML support for x86 platforms

Bugs fixed

  • Many bugs fixed
Assets 3
You can’t perform that action at this time.