schrodinger.infra.gpgpu_utils module¶
- schrodinger.infra.gpgpu_utils.get_local_gpgpus()¶
Detect local GPUs via schrodinger.gpgpu
- Returns:
list of tuple of local gpgpu device number and description
- Return type:
list(tuple(dev_num, desc))
- schrodinger.infra.gpgpu_utils.get_unsupported_graphics_card()¶
Get unsupported graphics card names with an unsupported compute capability (usually means they are too new).
If one is found, return the name of the card. If get_available_devices() doesn’t throw an exception, it means all devices are supported and return None. If get_available_devices() throw an exception due to NVML or CUDA call failure, return None, since device query failed.
- schrodinger.infra.gpgpu_utils.get_remote_gpgpus(host)¶
Return a list of GPGPUs belonging to the specified host.
- Parameters:
host (str) – name of host matching a name from the host file
- Returns:
list of tuple of gpgpu device number and description
- Return type:
list(tuple(dev_num, desc))
- schrodinger.infra.gpgpu_utils.start_mps_if_needed(env: dict[str, str])¶
Start an MpsDaemonManager if it is needed in the user’s environment (e.g. if there is at least one Nvidia GPU present on the system in exclusive mode). Additionally, sets environment variables needed to have the MpsDaemonManager be visible to subprocesses.
See the C++ MpsDaemonManager class for more details.
- Parameters:
env – Set of environment variables. Will potentially be modified to have MLFF-specific environment vars (e.g. MPS vars) added if they are needed.