Live.monitor_system()
DVCLive 可以跟踪并记录您的系统指标,以便在实验过程中查看硬件性能与限制。这些指标涵盖 CPU、RAM 和磁盘内存使用情况。如果您配备了 GPU,它还可以监控 GPU 使用情况。
def monitor_system(
interval: float = 0.05,
num_samples: int = 20,
directories_to_monitor: Optional[Dict[str, str]] = None,
):
用法
要监控系统指标,您可以在 `Live` 中将 `monitor_system` 参数设置为 `True`:
from dvclive import Live
live = Live(monitor_system=True)
或指定其他参数以配置日志记录行为:
from dvclive import Live
live = Live()
live.monitor_system(
interval = 0.01
num_samples = 20,
directories_to_monitor = {"data": "/data", "users": "/home"},
)
系统指标将实时显示在 DVC Studio 和我们的 VSCode 扩展 中。
描述
Live.monitor_system()
方法用于配置 `Live` 如何记录系统指标。如果您以 `monitor_system=True` 调用 `Live`,则会使用默认参数调用 Live.monitor_system()
。
`Live` 将以固定间隔采样系统指标,并对多个样本进行平均。平均后的数据将被 记录为指标。
当您调用 live.end()
时,采样将终止。
参数
-
interval
- 两次采样之间的间隔时间(秒)。为保持采样频率,允许的最大值为 0.1 秒,默认值为 0.05。 -
num_samples
- 在聚合前收集的样本数量。取值范围应为 1 至 30,默认值为 20。 -
directories_to_monitor
- 一个字典,包含需要监控的目录信息。`key` 为指标名称,`value` 为目录路径。所跟踪的指标是包含该目录的分区。默认值为{"main": "/"}
。
异常
ValueError
- 如果directories_to_monitor
中的键包含os.path.normpath
定义的无效字符
记录的指标列表
`Live` 会记录以下系统指标:
GPU 指标
如果您配备了 GPU,将记录以下指标:
system/gpu/count
- 可用 GPU 的数量。此指标不会被绘图,因为在实验过程中预期不会变化。system/gpu/usage (%)/<gpu_index>
- GPU 的平均使用率(百分比)。system/vram/usage (%)/<gpu_index>
- 每个 GPU 的虚拟内存使用量,以 GPU 可用总虚拟内存的百分比表示。system/vram/usage (GB)/<gpu_index>
- 每个 GPU 的虚拟内存使用量,以吉字节(GB)表示。system/vram/total (GB)/<gpu_index>
- 每个 GPU 的总虚拟内存容量,以吉字节(GB)表示。
<gpu_index>
是 GPU 的索引。例如,system/gpu/usage (%)/0
跟踪第一个 GPU 的使用情况。
如果您的系统配备了 GPU,但 DVCLive 未跟踪这些指标,请检查您的 GPU 是否被 NVIDIA 支持,并确认已安装 NVIDIA 驱动程序。
CPU 指标
system/cpu/count
- 可用 CPU 核心数。此指标不会被绘图,因为在实验过程中预期不会变化。system/cpu/usage (%)
- CPU 的平均使用率(百分比)。该指标为所有 CPU 核心的平均值。system/cpu/parallelization (%)
- 系统在 CPU 核心上的平均并行化率。该指标计算为已使用的 CPU 核心数与可用 CPU 核心总数的比率。若某个核心的活动度超过 20%,则被视为已使用。
RAM 指标
system/ram/usage (%)
- RAM 使用率占总内存容量的百分比。system/ram/usage (GB)
- RAM 使用量(单位:吉字节)。system/ram/total (GB)
- 可用的总 RAM 容量(单位:吉字节)。该指标不绘图,因为在实验过程中预期不会发生变化。
磁盘指标
这些指标用于跟踪系统的磁盘空间。可通过 directories_to_monitor
参数指定要监控的目录。相关指标针对包含该目录的磁盘分区。
system/disk/usage (%)/<name>
- 该分区已使用空间占总容量的百分比。system/disk/usage (GB)/<name>
- 该分区已使用空间(单位:吉字节)。system/disk/total (GB)/<name>
- 该分区的总可用空间(单位:吉字节)。该指标不绘图,因为在实验过程中预期不会发生变化。
<name>
是你在 directories_to_monitor
参数中指定的指标名称。默认名称为 main
。