Skip to content

Instantly share code, notes, and snippets.

@jakirkham
Forked from pentschev/pynvml_query_memory.py
Created January 13, 2020 22:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jakirkham/e6e36f88c910cd4c88d732c7d52f0738 to your computer and use it in GitHub Desktop.
Save jakirkham/e6e36f88c910cd4c88d732c7d52f0738 to your computer and use it in GitHub Desktop.
Query used GPU memory with pynvml
import datetime
import getopt
import os
import sys
import time
import pynvml
def print_mem(dev_count):
for index in range(dev_count):
mem = pynvml.nvmlDeviceGetMemoryInfo(
pynvml.nvmlDeviceGetHandleByIndex(index)
)
used = mem.used // (1024 ** 2)
total = mem.total // (1024 ** 2)
print("GPU #%d: %d MB/%d MB" % (index, used, total))
def run_loop(interval):
pynvml.nvmlInit()
dev_count = pynvml.nvmlDeviceGetCount()
while True:
os.system("clear")
print(datetime.datetime.now())
print_mem(dev_count)
time.sleep(interval)
def main(argv):
try:
opts, args = getopt.getopt(argv, "hi:", ["interval="])
except getopt.GetoptError:
print("test.py -i <interval>")
sys.exit(2)
for opt, arg in opts:
if opt == "-h":
print("test.py -i <interval>")
sys.exit()
elif opt in ("-i", "--interval"):
interval = int(arg)
print(interval)
run_loop(interval)
if __name__ == "__main__":
main(sys.argv[1:])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment