ML Diagnostics 平台
Google Cloud ML Diagnostics 是一个端到端托管式平台,用于优化、监控和诊断 Google Cloud上的 AI 和机器学习工作负载。使用 ML 诊断功能监控工作负载,并在一个平台内收集并直观呈现所有工作负载指标、配置和配置文件。ML 诊断适用于训练和推理工作负载,并且与 Cloud TPU 上的所有编排器(包括 Google Kubernetes Engine (GKE) 和自定义编排器)兼容。ML Diagnostics 包含以下功能:
- 工作负载监控:自动监控和诊断在 GKE TPU 上运行的 AI/机器学习工作负载。对于每个 GKE 作业,机器学习诊断工作负载监控会自动创建机器学习运行,监控整个工作负载的 TPU 占空比,检测影响工作负载的事件,并分析工作负载的不同层(例如基础设施、编排器和框架),以帮助确定事件的潜在原因。
- 机器学习运行:使用 ML Diagnostics 通过 Google Cloud CLI 创建和注册机器学习运行,或将 ML Diagnostics SDK 与您的工作负载集成。您可以使用工作负载监控自动创建和注册运行,并使用机器学习运行部署受管理的 XProf 实例,以及收集和管理工作负载指标、配置和分析会话。
- gcloud CLI 体验:通过 gcloud CLI 使用 ML 诊断 API 来注册和管理运行、部署受管理的 XProf 资源、直观呈现存储分区中的分析会话,以及从 CLI 触发分析捕获。您还可以通过 CLI 或 API 列出工作负载监控检测到的所有事件,并获取这些事件的分析器详细信息。
- Python SDK:使用与机器学习工作负载集成的开源 ML Diagnostics SDK,获得完整的机器学习工作负载诊断体验。在 Google Cloud上监控工作负载,并收集和管理工作负载指标、配置和配置文件。
- 受管理的分析:ML Diagnostics 会将 XProf 的受管理实例部署到关联的账号中,并使用可伸缩的后端,从而实现大型配置文件的快速加载。它支持多个用户同时访问配置文件,并包含多主机分析和按需分析等内置功能。
- 工作负载指标:跟踪工作负载指标,包括模型质量、模型性能和系统指标。借助工作负载监控,您无需集成 SDK 即可获取与工作负载关联的系统指标。
- 工作负载配置管理:跟踪工作负载配置,包括软件配置、系统配置和用户定义的配置。
- Cluster Director 和 GKE 中的可视化图表:在 Google Cloud 控制台中直观呈现 Cluster Director 和 Google Kubernetes Engine 中的指标、配置和配置文件。
- 链接共享:使用共享链接协作处理机器学习运行、工作负载监控、指标和配置文件方面的信息。
用户路径
您可以将 ML 诊断平台与工作负载监控功能搭配使用,自动监控所有 GKE 作业;也可以将该 SDK 与工作负载集成,获得完整的机器学习工作负载诊断体验。您可以通过 Google Cloud 控制台或 CLI 与机器学习诊断系统进行互动。对于通过 GKE 部署在 TPU 上的所有工作负载,系统会自动提供工作负载监控功能。
借助该 CLI,您可以使用 ML Diagnostics gcloud CLI 创建或修改机器学习运行作业,并部署受管理的 XProf 资源。使用 ML Diagnostics SDK 时,需要将该 SDK 集成到机器学习工作负载中,以收集和管理工作负载指标和配置,并部署受管理的 XProf 资源。
如需开始使用,请参阅以下指南之一:
使用 XProf 进行受管理的分析
当您使用 CLI 或 SDK 时,可以获得 XProf 提供的托管式分析体验。XProf 是一款面向机器学习工作负载的开源分析和性能分析工具,也是 OpenXLA 生态系统的一部分。
与自托管分析体验相比,托管分析体验的优势包括:
- 无需设置 XProf 或其他依赖项。
- 提供更好的安全保护,防范漏洞。
- 用于协作的共享链接。
- 更快地加载大型个人资料。
- 支持多个用户同时访问配置文件,并根据链接访问负载自动伸缩资源。
- 内置功能,例如多主机分析和按需分析。
- 使用同一受管理的 XProf 实例在多次运行中加载多个配置文件会话。
- ML 诊断平台部署的受管 XProf 资源不收取任何费用,因此受管 XProf 比自行托管 XProf 更具成本效益。
前提条件
在使用 ML Diagnostics 之前,请启用 Cluster Director API 并添加所需的 IAM 权限。如果您使用的是 GKE,则工作负载监控功能已启用。不过,ML 诊断 SDK 和按需分析需要额外的 GKE 制品和 GKE 集群配置。如需了解详情,请参阅设置 GKE。
启用 Cluster Director API
您无需使用 Cluster Director 来部署和管理集群,即可使用 ML Diagnostics 产品。ML Diagnostics 适用于由 GKE、Cluster Director 或自定义编排器管理的集群。ML Diagnostics 是 Cluster Director 系列 API 的一部分,但并不依赖于用户使用 Cluster Director 产品本身。
如需详细了解如何启用 Cluster Director API,请参阅在 Google Cloud 项目中启用 API。
IAM 权限
您的工作负载使用的 Google Cloud 服务账号需要具有以下已分配给项目的 IAM 角色:
roles/hypercomputecluster.editor:拥有完整权限,可创建和管理MLRun资源并查看用户界面。roles/logging.logWriter:将日志和指标写入 Cloud Logging。roles/storage.objectUser:将配置文件保存到machinelearning_run中指定的 Cloud Storage 存储桶。
您还可以创建自定义角色,为用户分配 ML 诊断所需的 API 子集。由于用户不需要使用 Cluster Director 来管理集群,因此您只需分配以下权限:
hypercomputecluster.locations.gethypercomputecluster.locations.listhypercomputecluster.machineLearningRuns.createhypercomputecluster.machineLearningRuns.deletehypercomputecluster.machineLearningRuns.gethypercomputecluster.machineLearningRuns.listhypercomputecluster.machineLearningRuns.updatehypercomputecluster.operations.cancelhypercomputecluster.operations.deletehypercomputecluster.operations.gethypercomputecluster.operations.listresourcemanager.projects.getResourcemanager.projects.list
对于 Google Kubernetes Engine 上的工作负载,请使用 Workload Identity Federation 将 Kubernetes 服务账号与已获授所需角色的 Google Cloud 服务账号相关联。
价格
您需要为通过 Cloud Logging 存储指标以及通过 Cloud Storage 存储分析文件支付费用。使用 ML 诊断平台时,无需为这些服务启用任何额外的结算。ML Diagnostics 平台部署的受管 XProf 资源不收取任何费用。