Los servicios de almacenamiento proporcionan la arquitectura de datos esencial que ayuda a habilitar el entrenamiento de modelos, la inferencia y el ajuste de alto rendimiento en AI Hypercomputer.
Estas recomendaciones son específicas para las GPUs agrupadas en clústeres.
El objetivo de este documento es ayudar a los arquitectos, ingenieros de almacenamiento y desarrolladores a evaluar y seleccionar el servicio de almacenamiento adecuado para sus cargas de trabajo en AI Hypercomputer.
Introducción a los servicios de almacenamiento
Google Cloud ofrece varias soluciones de almacenamiento optimizadas para casos de uso de IA y AA:
Cloud Storage es un sistema de almacenamiento de objetos diseñado para procesar y almacenar conjuntos de datos masivos, como los que se requieren para el entrenamiento o la inferencia masiva. Cloud Storage ofrece varias capacidades para ayudarte a optimizar el almacenamiento de datos para tareas de IA y AA.
Google Cloud Managed Lustre es un sistema de archivos paralelos completamente administrado y compatible con POSIX que está diseñado para el rendimiento de metadatos especializado, de baja latencia y de alta simultaneidad que se requiere para las cargas de trabajo de entrenamiento y de inferencia.
En las siguientes secciones, se proporciona más información sobre cada servicio de almacenamiento.
Cloud Storage
Cloud Storage es un almacén de objetos fundamental diseñado para ofrecer escalabilidad global, durabilidad y rentabilidad. Cuando usas Cloud Storage, almacenas datos como objetos en contenedores llamados buckets. Cloud Storage ofrece varias funciones para tus buckets que ayudan a optimizar el rendimiento de las cargas de trabajo de IA y AA:
Los productos de la familia Rapid de Cloud Storage están diseñados para eliminar los cuellos de botella de datos de tus cargas de trabajo de IA y AA, ya que acercan tus datos a tus recursos de procesamiento. Estos productos te permiten ubicar tus datos en las mismas zonas que tus cargas de trabajo de procesamiento y habilitar el ajuste de escala de almacenamiento de datos de alto rendimiento y rentable para tus clústeres de GPU o TPU. Los productos de Cloud Storage Rapid incluyen los siguientes:
Rapid Bucket proporciona el rendimiento de lectura y escritura más rápido en Cloud Storage para los buckets zonales. Los objetos en los buckets zonales se almacenan en la clase de almacenamiento Rapid, una clase de almacenamiento de alto rendimiento optimizada para cargas de trabajo con uso intensivo de E/S. Además de una latencia más baja, Rapid Bucket ofrece una capacidad de procesamiento significativamente mayor (hasta 15 TB/s) en comparación con otros productos y ubicaciones de buckets en Cloud Storage.
Rapid Cache acelera las lecturas de datos en los buckets existentes sin necesidad de cambiar el código. Rapid Cache es una caché de lectura zonal respaldada por SSD para buckets de Cloud Storage que se usa para entregar datos para las solicitudes de lectura de datos. El producto ofrece mayor capacidad de procesamiento (hasta 2.5 TB/s) y menor latencia que los buckets sin caché.
Rapid Cache suele configurarse para buckets multirregionales, en los que la capacidad del acelerador se fragmenta en Google Cloud regiones. Los datos que se leen de la caché generan tarifas de transferencia de datos reducidas en comparación con los datos que se leen directamente de un bucket multirregional.
Cloud Storage FUSE es un adaptador de FUSE de código abierto que te permite activar buckets como sistemas de archivos locales, lo que permite que las aplicaciones interactúen con el almacenamiento de objetos usando la semántica del sistema de archivos estándar. Esta capacidad te permite aprovechar la escalabilidad global, la durabilidad y la eficiencia en costos de Cloud Storage con acceso a archivos locales. Cloud Storage FUSE recibe mantenimiento y asistencia de forma activa por parte de Google.
Cloud Storage FUSE ofrece varios parámetros de ajuste y almacenamiento en caché del cliente, como las descargas paralelas. Estas capacidades pueden abstraer las complejidades del desarrollo y ayudar a alcanzar el máximo rendimiento mediante la fragmentación o la paralelización de transmisiones.
El espacio de nombres jerárquico habilita una verdadera estructura de sistema de archivos en los buckets y proporciona capacidades eficientes de administración de datos, incluidos los cambios de nombre de carpetas atómicos y las búsquedas de archivos más rápidas cuando el bucket se activa con Cloud Storage FUSE. El espacio de nombres jerárquico ofrece 8 veces más consultas por segundo (QPS) para lecturas y escrituras de objetos que los buckets sin espacio de nombres jerárquico. Para obtener más información sobre los beneficios de usar el espacio de nombres jerárquico, consulta Beneficios de rendimiento y administración.
Se recomienda habilitar el espacio de nombres jerárquico cuando tienes cargas de trabajo que requieren una carga de datos de alta capacidad de procesamiento y puntos de control frecuentes del modelo. Es necesario tener habilitado el espacio de nombres jerárquico cuando se crean buckets zonales con Rapid Bucket.
Managed Lustre
Google Cloud Managed Lustre es un sistema de archivos paralelos completamente administrado, de alto rendimiento y compatible con POSIX, optimizado para aplicaciones de IA y AA. La arquitectura de Managed Lustre es ideal para cargas de trabajo de IA/AA de alta capacidad de procesamiento, baja latencia y alta simultaneidad de metadatos, como la creación de puntos de control, la propagación de pesos de alta velocidad en el aprendizaje por refuerzo y el almacenamiento en caché de clave-valor (KV).
Para obtener más información sobre los casos de uso comunes de Managed Lustre, consulta Casos de uso comerciales.
Comparación de los servicios de almacenamiento
En la siguiente tabla, se proporciona una comparación general de Cloud Storage y Managed Lustre en función de las características clave:
| Características | Cloud Storage | Managed Lustre |
|---|---|---|
| Arquitectura | Almacén de objetos
|
Sistema de archivos paralelos
|
| Capacidad de almacenamiento | Se puede escalar hasta EB de capacidad. |
Escala hasta 80 PB de capacidad, según el nivel de rendimiento de la instancia. |
| Rendimiento | Admite lo siguiente:
|
Admite lo siguiente:
|
| Precios |
Para obtener más información, consulta los Precios de Cloud Storage. |
Para obtener más información, consulta los precios de Managed Lustre. |
| Recomendaciones por requisitos | Se recomienda para aplicaciones que necesitan un almacén de objetos escalable y eficiencia general en los costos para conjuntos de datos de entrenamiento, puntos de control asíncronos de varios niveles y almacenamiento de pesos del modelo. En particular, se recomienda Cloud Storage Rapid para el escalamiento de datos de alto rendimiento y rentable. |
Se recomienda para aplicaciones que necesitan un sistema de archivos paralelo o directorios principales que cumplan con POSIX. También se recomienda para cargas de trabajo sensibles a la latencia o con alta simultaneidad de metadatos, como descargas de caché de KV, creación de puntos de control síncronos y propagación de pesos de alta velocidad para el aprendizaje por refuerzo. |
Recomendaciones de servicios de almacenamiento por caso de uso
| Caso de uso | Recomendación de servicio de almacenamiento | Motivo de la recomendación |
|---|---|---|
| Entrenamiento y preparación de conjuntos de datos | Recomendación de almacenamiento de objetos: Rapid Bucket de Cloud Storage | Los buckets de Cloud Storage proporcionan la capacidad, la escala de capacidad de procesamiento, la rentabilidad y la durabilidad que a menudo se necesitan para grandes volúmenes de conjuntos de datos de entrenamiento y de inferencia. Cuando usas Rapid Bucket para crear un bucket zonal, este se beneficia de un rendimiento muy alto (hasta 15 TB/s) y una latencia inferior a un milisegundo para los archivos abiertos a un costo óptimo. |
| Recomendación de almacenamiento de archivos: Managed Lustre | Managed Lustre proporciona una latencia de menos de un milisegundo. Es útil como espacio de trabajo dedicado y ultrarrápido para las tareas de entrenamiento y preparación de conjuntos de datos más intensivas, en las que la baja latencia y el rendimiento de la simultaneidad de metadatos son una prioridad alta. | |
| Cómo mover o guardar los pesos del modelo para la creación de puntos de control o la transferencia de pesos | Recomendación de almacenamiento de objetos: Rapid Bucket de Cloud Storage | Rapid Bucket es adecuado para la creación de puntos de control asíncronos de varios niveles o distribuidos cuando se usa con GCSFS a través de fsspec o Cloud Storage FUSE con ajuste del rendimiento del cliente.
|
| Recomendación de almacenamiento de archivos: Managed Lustre | Managed Lustre proporciona una latencia de menos de un milisegundo y acceso a datos paralelos, lo que permite que miles de trabajadores de implementación extraigan el mismo archivo de pesos de forma simultánea. | |
| Cómo almacenar y descargar modelos para la inferencia | Recomendación de almacenamiento de objetos: Rapid Cache o Rapid Bucket de Cloud Storage | Rapid Cache actúa como un refuerzo que ayuda a reducir el inicio en frío de la inferencia. Con Rapid Cache, los pesos del modelo se pueden precalentar en la misma zona que los nodos de inferencia, lo que permite que una nueva instancia de inferencia descargue rápidamente los pesos del modelo y procese su primera solicitud. Rapid Bucket funciona como un motor de almacenamiento zonal acelerado y de alto rendimiento que te permite ubicar los pesos del modelo en la misma zona que tu flota de inferencia. Para la entrega de modelos, recomendamos usar Run:ai Model Streamer para vLLM para obtener el máximo rendimiento de descarga. Para otras pilas de inferencia, optimizar los parámetros de descarga paralela de Cloud Storage FUSE puede reducir significativamente la latencia de inicio en frío durante las descargas de pesos del modelo. |
| Recomendación de almacenamiento de archivos: Managed Lustre | Managed Lustre proporciona una latencia inferior a un milisegundo y acceso paralelo a los datos, lo que beneficia a los modelos sensibles al rendimiento y al escalamiento de las GPUs simultáneas que descargan el mismo modelo al mismo tiempo. | |
| Descarga de la caché de KV | Recomendación de almacenamiento de archivos: Managed Lustre | Managed Lustre proporciona una latencia de menos de un milisegundo y acceso paralelo a los datos, lo que permite que diferentes nodos "extraigan" la caché de KV y reanuden los chats sin volver a procesar todo el historial del chat. |
¿Qué sigue?
Obtén más información sobre Cloud Storage Rapid, una familia de productos de Cloud Storage diseñados para la IA, el AA y el análisis intensivo de datos.
Aprende a optimizar el rendimiento cuando usas Cloud Storage FUSE o el controlador CSI de Cloud Storage FUSE para descargar conjuntos de datos.
Obtén información para acelerar la carga de modelos en Google Kubernetes Engine.