Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I installed CUDA toolkit on my computer and started BOINC project on GPU. In BOINC I can see that it is running on GPU, but is there a tool that can show me more details about that what is running on GPU - GPU usage and memory usage?

share|improve this question
up vote 46 down vote accepted

For Nvidia GPUs there is a tool nvidia-smi that can show memory usage, GPU utilization and temperature of GPU. There also is a list of compute processes and few more options but my graphic card (GeForce 9600 GT) is not fully supported.

Sun May 13 20:02:49 2012       
| NVIDIA-SMI 3.295.40   Driver Version: 295.40         |                       
| Nb.  Name                     | Bus Id        Disp.  | Volatile ECC SB / DB |
| Fan   Temp   Power Usage /Cap | Memory Usage         | GPU Util. Compute M. |
| 0.  GeForce 9600 GT           | 0000:01:00.0  N/A    |       N/A        N/A |
|   0%   51 C  N/A   N/A /  N/A |  90%  459MB /  511MB |  N/A      Default    |
| Compute processes:                                               GPU Memory |
|  GPU  PID     Process name                                       Usage      |
|  0.           Not Supported                                                 |
share|improve this answer
My ION chip does not show usage, either. :/ – Raphael Jun 10 '12 at 22:15
For Linux and for some versions of Windows, but not for Unixnvidia-smi ships with NVIDIA GPU display drivers on Linux, and with 64-bit Windows Server 2008 R2 and Windows 7. – Graham Perrin Dec 23 '12 at 14:57
watch -n 0.5 nvidia-smi, will keep the output updated without filling your terminal with output. – Bar Jul 14 at 18:26

For Intel GPU's there exists the intel-gpu-tools from http://intellinuxgraphics.org/ project, which brings the command intel_gpu_top (amongst other things). It is similar to top and htop, but specifically for the Intel GPU.

   render busy:  18%: ███▋                                   render space: 39/131072
bitstream busy:   0%:                                     bitstream space: 0/131072
  blitter busy:  28%: █████▋                                blitter space: 28/131072

          task  percent busy
           GAM:  33%: ██████▋                 vert fetch: 0 (0/sec)
          GAFS:   3%: ▋                       prim fetch: 0 (0/sec)
            VS:   0%:                      VS invocations: 559188 (150/sec)
            SF:   0%:                      GS invocations: 0 (0/sec)
            VF:   0%:                           GS prims: 0 (0/sec)
            DS:   0%:                      CL invocations: 186396 (50/sec)
            CL:   0%:                           CL prims: 186396 (50/sec)
           SOL:   0%:                      PS invocations: 8191776208 (38576436/sec)
            GS:   0%:                      PS depth pass: 8158502721 (38487525/sec)
            HS:   0%:                      
            TE:   0%:                      
          GAFM:   0%:                      
           SVG:   0%:                      
share|improve this answer
Thanks! Loved it! – rbanffy May 13 '12 at 14:13

For linux, use nvidia-smi -l 1 will continually give you the gpu usage info, with in refresh interval of 1 second.

share|improve this answer
I prefer to use watch -n 1 nvidia-smi to obtain continuous updates without filling the terminal with output – ali_m Jan 27 at 23:59

nvidia-smi does not work on some linux machines (returns N/A for many properties). You can use nvidia-settings instead (this is also what mat kelcey used in his python script).

nvidia-settings -q GPUUtilization -q useddedicatedgpumemory

You can also use:

watch -n0.1 "nvidia-settings -q GPUUtilization -q useddedicatedgpumemory"

for continuous monitoring.

share|improve this answer
Glad this wasn't a comment. It's exactly what I was searching for when I came across this question. – Score_Under Jun 20 '15 at 0:24
Thanks, this is what worked for me, since I have a GeForce card which is not supported by nvidia-smi. – alexg Dec 22 '15 at 9:23
You can do nvidia-settings -q all to see what other parameters you can monitor. I'm monitoring GPUCurrentProcessorClockFreqs and GPUCurrentClockFreqs. – alexg Dec 22 '15 at 9:34
Thanks man, good idea to query all, since each card may have different strings to monitor! – ruoho ruotsi Feb 2 at 19:08

For completeness, AMD has two options:

  1. fglrx (closed source drivers).

    $ aticonfig --odgc --odgt
  2. mesa (open source drivers), you can use RadeonTop.

    View your GPU utilization, both for the total activity percent and individual blocks.

share|improve this answer

For OS X

Including Mountain Lion

iStat Menus

Excluding Mountain Lion


The last version of atMonitor to support GPU related features is atMonitor 2.7.1.

– and the link to 2.7.1 delivers 2.7b.

For the more recent version of the app, atMonitor - FAQ explains:

To make atMonitor compatible with MacOS 10.8 we have removed all GPU related features.

I experimented with 2.7b a.k.a. 2.7.1 on Mountain Lion with a MacBookPro5,2 with NVIDIA GeForce 9600M GT. The app ran for a few seconds before quitting, it showed temperature but not usage:

                                                  screenshot of atMonitor 2.7b on Mountain Lion

share|improve this answer

for nvidia on linux i use the following python script which uses an optional delay and repeat like iostat and vmstat


$ gpu_stat.py 1 2
{"util":{"PCIe":"0", "memory":"10", "video":"0", "graphics":"11"}, "used_mem":"161", "time": 1424839016}
{"util":{"PCIe":"0", "memory":"10", "video":"0", "graphics":"9"}, "used_mem":"161", "time":1424839018}
share|improve this answer

Recently I have written a simple command-line utility called gpustat (which is a wrapper of nvidia-smi) : please take a look at https://github.com/wookayin/gpustat.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.