gpu_tracker: Python package for tracking and profiling GPU utilization in both desktop and high-performance computing environments
<|reference_start|>gpu_tracker: Python package for tracking and profiling GPU utilization in both desktop and high-performance computing environments: Determining the maximum usage of random-access memory (RAM) on both the motherboard and on a graphical processing unit (GPU) over the lifetime of a computing task can be extremely useful for troubleshooting points of failure as well as optimizing memory utilization, especially within a high-performance computing (HPC) setting. While there are tools for tracking compute time and RAM, including by job management tools themselves, tracking of GPU usage, to our knowledge, does not currently have sufficient solutions. We present gpu_tracker, a Python package that tracks the computational resource usage of a task while running in the background, including the real compute time that the task takes to complete, its maximum RAM usage, and the maximum GPU RAM usage, specifically for Nvidia GPUs. We demonstrate that gpu_tracker can seamlessly track computational resource usage with minimal overhead, both within desktop and HPC execution environments.<|reference_end|>
@article{huckvale2024gpu_tracker:,
    title={gpu_tracker: Python package for tracking and profiling GPU utilization
  in both desktop and high-performance computing environments},
    author={Erik D. Huckvale, Hunter N.B. Moseley},
    journal={arXiv preprint arXiv:2404.01473},
    year={2024},
    archivePrefix={arXiv},
    eprint={2404.01473},
    primaryClass={cs.PF}
}