Метрики в ML Space
Метрика — это величина, регулярно выгружаемая из компонента системы и обогащенная метаинформацией в виде лейблов.
Метрики бывают двух видов:
Счетчики (counter) — отображают значение нарастающим итогом. Обычно к таким метрикам применяются функции rate().
Текущие значения/измерения (gauge) — отображают текущие измерения, зафиксированные для определенного компонента. Обычно к ним применяют агрегирующие фунКции sum(), avg().
Метрики, которые предоставляет ML Space, имеют единый префикс mls_. Они поступают с вычислительных узлов (подов) в разрезе контейнеров.
Если вы используете GPU, будут доступны метрики, собираемые утилитой dcgm_exporter.
Задачи обучения и Jupyter Servers имеют разную схему развертывания на вычислительных узлах (pod):
Задачи обучения запускаются как заданное количество реплик с одним управляющим узлом (master). Реплика содержит один запускаемый контейнер.
Jupyter Server запускается на одном узле. Количество контейнеров определяется источником образа. Пользовательские образы разворачиваются в одном контейнере (compute), образы ML Space — в двух: compute-контейнер и frontend-контейнер.
Счетчики (на схеме С — counter) отображают значения нарастающим итогом. Обычно к таким метрикам применяются функции rate().
Измерения (на схеме G — gauge) отображают текущие измерения, зафиксированные для определенного компонента. Применяются функции sum(), avg().
Лейблы
Метрики содержат общие для всех лейблы. Среди них выделяют системные, которые есть у всех продуктов в мониторинге:
__name__ — имя метрики.
project_id — ID проекта, в котором регистрируется потребление. Совпадает с выбранным проектом пользователя в консоли Cloud.ru.
product_type — продукт, метрики которого отслеживаются. Здесь product_type = mlspace.
И другие:
product_instance_type — тип экземпляра, регистрирующего метрику.
Возможные значения:
jupyter_server;
job.
product_instance_name — имя экземпляра, например, название задачи обучения или Jupyter Server.
region — название региона.
allocation — аллокация региона или default, если ее нет.
workspace — имя воркспейса регистрируемого региона.
workspace_id — id воркспейса регистрируемого региона.
container — идентификатор контейнера.
pod — рабочий узел региона.
Названия метрик
В таблице приведены метрики и информация о них.
Метрика |
Тип |
Описание |
Дополнительные лейблы |
---|---|---|---|
mls_container_cpu_usage_seconds_total |
Счетчик (Counter) |
Суммарное процессорное время, потребляемое контейнером в ядро-секундах. Метрика регистрируется в разрезе vCPU-контейнеров. |
- |
mls_container_memory_usage_byte |
Текущее значение (Gauge) |
Потребление памяти в байтах. |
- |
mls_kube_pod_container_resource_limits |
Текущее значение (Gauge) |
Лимит выделенных ресурсов на контейнер. Содержит лейбл resource, который определяет тип выделяемого ресурса: cpu, mem. |
|
mls_DCGM_FI_DEV_GPU_UTIL |
ТеКущее значение (Gauge) |
Потребление GPU. Метрика предоставляется NVIDIA dcgm-exporter. |
gpu — номер GPU-устройства. |
mls_DCGM_FI_DEV_POWER_USAGE |
Текущее значение (Gauge) |
Потребление питания GPU. Метрика предоставляется NVIDIA dcgm-exporter. |
gpu — номер GPU-устройства. |
mls_DCGM_FI_DEV_FB_FREE |
Текущее значение (Gauge) |
Свободный объем буфера памяти в МБ. Метрика предоставляется NVIDIA dcgm-exporter. |
gpu — номер GPU-устройства. |
mls_DCGM_FI_DEV_FB_USED |
Текущее значение (Gauge) |
Использованный объем буфера памяти в МБ. Метрика предоставляется NVIDIA dcgm-exporter. Эквивалентна показателям в nvidia-smi. |
gpu — номер GPU-устройства. |
mls_DCGM_FI_DEV_MEM_COPY_UTIL |
Текущее значение (Gauge) |
Использование памяти. Метрика отражает использование в части операций ввода и вывода в память и из нее. |
gpu — номер GPU-устройства. |
mls_DCGM_FI_PROF_PIPE_TENSOR_ACTIVE |
Текущее значение (Gauge) |
Показатель активности тензорного канала. |
gpu — номер GPU-устройства. |