MoseleyBioinformaticsLab / gpu_tracker

Context manager and CLI that tracks the computational-resource-usage of a code block or shell command, particularly the GPU usage.
Other
4 stars 1 forks source link

Add AMD GPU support #45

Open erikhuck opened 1 month ago

erikhuck commented 1 month ago

Currently, gpu-tracker assumes an Nvidia gpu and calls nvidia-smi. There should be an additional parameter for gpu_branch that accepts 'nvidia', 'amd', or None which is the default. If None, no GPU info is tracked, otherwise it tracks according to the specified branch. We may want to separate the GPU tracking into separate classes with NvidiaGPUTracker, AMDGPUTracker, and a base GPUTracker class. The common interface from the base class can be used by the Tracker class and it doesn't need to be concerned about which brand of GPU is used i.e. polymorphism.

To prototype GPU support, we'll need to access a cloud cluster with GPU, ideally with ssh. The National Science Foundation (NSF), via their ACCESS website, provides clusters called "resources" and the DELTA resource has AMD GPUs. I've asked Vikram for assistance with accessing this ACCESS resource.

erikhuck commented 1 month ago

This CLI might be what we need as a replacement for nvidia-smi, though apparently it has a corresponding python package.