Creación de una arquitectura común para la informática de alto rendimiento, la inteligencia artificial y el análisis de datos

Hoy en día, la informática de alto rendimiento ( HPC ), la inteligencia artificial ( AI ) y el análisis de datos ( DA ) se superponen cada vez más. El punto es que la resolución de problemas complejos requiere una combinación de diferentes técnicas. La combinación de AI, HPC y DA en los procesos de fabricación tradicionales puede acelerar el descubrimiento científico y la innovación.



Los científicos e investigadores de datos están desarrollando nuevos procesos de resolución de problemas intensivos en computación, como los sistemas HPC, a gran escala. Las cargas de trabajo de análisis de datos e inteligencia artificial se benefician de la infraestructura de HPC que se escala para mejorar el rendimiento. Hoy hablaremos sobre las tendencias en este mercado y los enfoques para crear arquitectura para DA, AI y HPC bajo el corte.







La tendencia hacia la convergencia de las cargas de trabajo modernas requiere una arquitectura más unificada. Las cargas de trabajo tradicionales de HPC (como la simulación) requieren mucha potencia informática, así como conexiones de red rápidas y sistemas de archivos de alto rendimiento. Por ejemplo, la creación de un modelo de yacimiento para un depósito mineral puede llevar desde varias horas hasta varios días.



Las cargas de trabajo de inteligencia artificial y análisis de datos consumen muchos recursos y requieren herramientas de recopilación de datos y espacios de trabajo especializados para que los operadores procesen los datos. La inteligencia artificial y el análisis de datos son procesos que requieren interacción interactiva y acciones repetitivas.



La diferencia en las cargas de trabajo de HPC, AI y DA podría dar la impresión de que requerirían tres infraestructuras separadas, pero este no es el caso. La arquitectura unificada es adecuada tanto para analistas de datos como para científicos que trabajan con inteligencia artificial, sin reentrenamiento y adaptación al nuevo modelo operativo.



Sin embargo, la integración de las tres cargas de trabajo en una sola arquitectura plantea desafíos a considerar:



  • Las habilidades del usuario de HPC, AI o DA varían.
  • Los sistemas de gestión de recursos y los planificadores de carga no son intercambiables.
  • No todo el software y no todos los marcos están integrados en una sola plataforma.
  • Los ecosistemas requieren diferentes herramientas y funciones.
  • Las cargas y sus requisitos de rendimiento son diferentes.


La base de las soluciones llave en mano de Dell Technologies



Las soluciones de análisis de datos e inteligencia artificial listas para usar de Dell Technologies proporcionan un entorno único para las tres cargas de trabajo. Se construyen teniendo en cuenta cuatro principios básicos:



  1. Disponibilidad de datos.
  2. Programación de trabajos y gestión de recursos simples.
  3. Optimización de cargas de trabajo.
  4. Orquestación y contenedorización integradas.


Disponibilidad de datos



Los usuarios necesitan un acceso rápido a sus datos independientemente de la carga de trabajo. El movimiento de datos debe limitarse entre entornos de almacenamiento dispares. Los conjuntos de datos para HPC, AI y DA deben combinarse en un solo entorno para mejorar la eficiencia operativa, especialmente si el flujo de trabajo combina múltiples técnicas.



Por ejemplo, los sistemas avanzados de asistencia al conductor utilizan modelos climáticos extremos para evitar accidentes en la conducción real con mal tiempo. Los nuevos datos se utilizan para entrenar la red neuronal profunda: la salida se convierte en la entrada para entrenar el modelo. Luego, los resultados se cargan en Spark, que se utiliza para conectarse al conjunto de datos actual del cliente y seleccionar los mejores datos para el entrenamiento posterior del modelo. Para un mejor rendimiento, los datos recibidos del flujo de trabajo deben estar lo más cerca posible de los datos ya disponibles.







Programación de trabajos y gestión de recursos



Los consumidores de HPC confían en los programadores de trabajos tradicionales como SLURM. Para la programación por lotes, SLURM asigna recursos de hardware según los intervalos de tiempo y proporciona un marco para iniciar, ejecutar y controlar los trabajos en ejecución. SLURM también proporciona administración de colas para los tickets enviados para evitar la contención entre tareas en el clúster.



El análisis de datos utiliza programadores de tareas como Spark Standalone y Mesos. Una arquitectura prediseñada para la informática de alto rendimiento y la inteligencia artificial utiliza Kubernetes para orquestar Spark y administrar los recursos para las tareas que se realizan. Dado que ningún programador de trabajos se ocupa de ambos entornos, la arquitectura debe admitir ambos. Dell Technologies ha desarrollado una arquitectura que cumple con ambos requisitos.



La arquitectura llave en mano de Dell EMC para HPC, análisis de datos e IA crea un único grupo de recursos. Los recursos se pueden asignar dinámicamente a cualquier tarea de HPC que se administre a través de HPC Resource Manager o para cargas de trabajo de análisis de datos o IA en contenedores que a su vez se administran desde el sistema de contenedores de Kubernetes.



Optimización de cargas de trabajo



La arquitectura debe poder escalar para un tipo de carga de trabajo sin comprometer otra. Los lenguajes de programación, las necesidades de escalado y la gestión de la pila de software y los sistemas de archivos son importantes para comprender los requisitos de la carga de trabajo. La siguiente tabla muestra ejemplos de tecnologías que se utilizan al crear una arquitectura escalable:









El componente de diseño final es la integración de Kubernetes y Docker en la arquitectura de Kubernetes, un sistema de contenedorización de código abierto que se utiliza para automatizar la implementación, el escalado y la administración. Kubernetes lo ayuda a organizar un clúster de servidores y contenedores de programación en función de los recursos disponibles y las necesidades de recursos de cada contenedor. Los contenedores se organizan en grupos, la unidad operativa básica de Kubernetes, que se escalan al tamaño deseado.



Kubernetes ayuda a gestionar el servicio de descubrimiento, que incluye equilibrio de carga, seguimiento de la asignación de recursos, utilización y comprobaciones del estado de los recursos individuales. Esto permite que las aplicaciones se recuperen automáticamente reiniciando o copiando contenedores automáticamente.



Docker es una plataforma de software que le permite crear, probar e implementar rápidamente productos de software. Empaqueta programas en módulos estándar llamados contenedores, que tienen todo lo necesario para ejecutar un programa, incluidas bibliotecas, herramientas del sistema, código y condiciones para su ejecución. Con Docker, puede implementar y escalar aplicaciones rápidamente en cualquier entorno y asegurarse de que su código se ejecute.



Bloques de arquitectura de hardware



Elegir el servidor adecuado



Dell EMC PowerEdge DSS 8440 es un servidor de 2 sockets (4U) optimizado para HPC. Un DSS 8440 puede acomodar 4, 8 o 10 aceleradores gráficos NVIDIA V100 para reconocimiento de imágenes o NVIDIA T4 para procesamiento de lenguaje natural (NLP). Diez unidades NVMe proporcionan un acceso rápido a los datos de entrenamiento. Este servidor tiene tanto el rendimiento como la flexibilidad para ser ideal para el aprendizaje automático, así como para otras cargas de trabajo que consumen muchos recursos. Por ejemplo, modelado y análisis predictivo en entornos de ingeniería y científicos.







Dell EMC PowerEdge C4140satisface las necesidades de soluciones de servidor escalables necesarias para la formación de redes neuronales. El aprendizaje profundo es un proceso computacionalmente intensivo, que incluye GPU rápidas, especialmente durante la fase de aprendizaje. Cada servidor C4140 admite hasta cuatro GPU NVIDIA Tesla V100 (Volta). Conectados a través de la fábrica NVIDIA NVLINK 20, se pueden agrupar ocho o más C4140 para modelos más grandes, ofreciendo un rendimiento de hasta 500 Pflops.







Dell EMC PowerEdge R740xdEs un servidor clásico de 2 sockets adecuado para la mayoría de proyectos de aprendizaje automático. Este servidor 2U de uso general tiene la posibilidad de ser utilizado para tareas de aprendizaje profundo, ya que admite la instalación de aceleradores de gráficos y una gran cantidad de dispositivos de almacenamiento.







Elegir la red adecuada



Dell EMC PowerSwitch S5232F-ON: Ethernet de alto rendimiento Dell EMC S5235F-ON El S5235F-ON tiene 32 puertos QSFP28, cada uno de los cuales admite 100 GbE o 10/25/40/50 GbE mediante cables divididos. El bus de conmutación tiene un ancho de banda de 64 Tbps, lo que proporciona un alto rendimiento con baja latencia.



Mellanox SB7800 es la solución adecuada para muchas cargas de trabajo simultáneas. Un bus de 72 Tbit / s sin bloqueo de alto rendimiento con una latencia de 90 ns entre dos puntos de conmutación cualesquiera proporciona una solución de alto rendimiento.



Servicios y sistemas de almacenamiento



Elegir el servicio de almacenamiento adecuado



La elección de los componentes de hardware depende del problema que se resuelva y del software utilizado. Más bien de forma condicional, los subsistemas de almacenamiento de datos se pueden dividir en tres tipos:



  1. El servicio de almacenamiento está integrado en el software y es una parte integral del mismo. Un ejemplo es Apache Hadoop con sistema de archivos HDFS o la base de datos Sin SQL Apache Cassandra.
  2. El servicio de almacenamiento lo proporcionan soluciones especializadas (por ejemplo, Dell EMC PowerScale) o sistemas de almacenamiento corporativos.
  3. Acceso a los recursos en la nube: tanto privados de Dell EMC ECS, Cloudian, Ceph como públicos: Amazon, Google, MS Azure. El acceso a los datos, por regla general, se realiza según los protocolos REST: Amazon S3, Openstack Swift, etc. Este es uno de los segmentos en desarrollo más activo del mercado de almacenamiento para Big Data.


Se pueden distinguir los enfoques combinados cuando se utilizan servicios de almacenamiento integrados o sistemas especializados como capa de almacenamiento operativo, y los sistemas en la nube actúan como almacenamiento de archivo a largo plazo. El uso de un servicio de almacenamiento en particular depende de la tarea a resolver y de los requisitos reglamentarios (protección contra desastres, integración con proveedores de autorización y auditoría, usabilidad).



Por un lado, los servicios de almacenamiento integrados, si están disponibles en el software, se implementan rápidamente y, por supuesto, se integran lo más posible con otros servicios de aplicaciones. Por otro lado, no siempre cumplen con todos los requisitos necesarios. Por ejemplo, no existe una replicación completa ni una integración con los sistemas de respaldo. Además, creamos otro "segmento / isla de datos" dedicado exclusivamente para una distribución o un conjunto de aplicaciones.







Requisitos de funcionalidad



Se pueden imponer los siguientes requisitos al servicio de almacenamiento:



  • Escalabilidad lineal tanto en capacidad como en rendimiento.
  • La capacidad de trabajar de forma eficaz en un entorno de subprocesos múltiples.
  • Tolerancia a fallas masivas de los componentes del sistema.
  • Fácil de actualizar y expandir el sistema.
  • Capacidad para crear niveles de almacenamiento en línea y de archivo.
  • Funcionalidad avanzada para trabajar con datos (auditoría, herramientas de recuperación ante desastres, protección contra cambios no autorizados, deduplicación, búsqueda de metadatos, etc.).


El rendimiento del almacenamiento es fundamental para proyectos de informática de alto rendimiento, aprendizaje automático e inteligencia artificial. Es por eso que Dell Technologies ofrece una amplia gama de sistemas de almacenamiento híbridos y all-flash para satisfacer los requisitos de los clientes más exigentes.



La cartera de almacenamiento de Dell EMC incluye sistemas de almacenamiento PowerScale (HDFS, NFS / SMB) y ECS (S3, Opensatck Swift, HDFS) de alto rendimiento, así como sistemas de almacenamiento distribuido NFS y Lustre.



Un ejemplo de un sistema especializado



Dell EMC PowerScale es un ejemplo de un sistema especializado que le permite trabajar de manera eficaz en proyectos relacionados con big data. Le permite crear un lago de datos corporativos. El sistema de almacenamiento no contiene controladores ni estantes de discos, sino que es un conjunto de nodos equivalentes conectados mediante una red duplicada dedicada. Cada nodo contiene discos, procesadores, memoria e interfaces de red para el acceso de los clientes. Toda la capacidad de disco del clúster forma una única agrupación de almacenamiento y un único sistema de archivos, al que se puede acceder a través de cualquiera de los nodos.



Dell EMC PowerScaleEs un sistema de almacenamiento con acceso concurrente sobre varios protocolos de archivos. Todos los nodos forman un solo grupo de recursos y un solo sistema de archivos. Todos los nodos son iguales, cualquier nodo puede procesar cualquier solicitud sin gastos generales adicionales. El sistema se expande a 252 nodos. Dentro de un clúster, podemos usar grupos de nodos con diferente rendimiento. Para el procesamiento operativo, utilice nodos productivos con SSD / NVMe y acceso eficiente a la red de 40 o 25 GbE, y para los datos de archivo, nodos con discos SATA de gran capacidad de 8-12 terabytes. Además, es posible mover los datos menos utilizados a la nube: tanto privados como públicos.







Proyectos y aplicaciones



El uso de Dell EMC PowerScale ha dado lugar a una serie de interesantes proyectos de big data . Por ejemplo, un sistema de identificación de actividades sospechosas para Mastercard. También resuelve con éxito problemas relacionados con el control automático de vehículos (ADAS) de Zenuity. Uno de los puntos importantes es la capacidad de separar el servicio de almacenamiento en un nivel separado con la posibilidad de escalarlo por separado.



Por lo tanto, se pueden conectar múltiples plataformas de análisis a una única plataforma de almacenamiento con un solo conjunto de datos. Por ejemplo, un clúster analítico principal con una distribución de Hadoop específica que se ejecuta directamente en los servidores y un ciclo de desarrollo / prueba virtualizado. Al mismo tiempo, no se puede asignar todo el clúster para las tareas de análisis, sino solo una parte determinada.



El segundo punto importante es que PowerScale proporciona acceso al sistema de archivos. Es decir, en comparación con las soluciones tradicionales, no existe una limitación estricta en la cantidad de información analizada. La arquitectura en clúster proporciona un rendimiento excelente para las tareas de aprendizaje automático, incluso cuando se utilizan unidades SATA grandes. Un ejemplo excelente son los problemas de ML / DL, donde la precisión del modelo resultante puede depender del volumen y la calidad de los datos.



Sistemas tradicionales



Dell EMC PowerVault ME4084 (DAS) se puede utilizar como un sistema de almacenamiento básico. Se puede ampliar a 3 petabytes y tiene una capacidad de procesamiento de 5.500 MB / sy 320.000 IOPS.



Diagrama típico de una solución llave en mano para HPC, IA y análisis de datos







Casos de uso típicos de IA por industria







Resumen



Las soluciones llave en mano de Dell Technologies para HPC , IA y análisis de datos brindan una arquitectura unificada que admite múltiples cargas de trabajo. La arquitectura se basa en cuatro componentes clave: disponibilidad de datos, fácil programación de trabajos y administración de recursos, optimización de la carga de trabajo más orquestación y contenedorización integradas. La arquitectura admite múltiples opciones de servidor, redes y almacenamiento para satisfacer mejor las necesidades de HPC.



Se pueden utilizar para resolver problemas muy diferentes y siempre estamos dispuestos a ayudar a los clientes con la selección, implementación, configuración y mantenimiento de los equipos.



El autor del material es Alexander Koryakovsky, ingeniero consultor del Departamento de Soluciones de Computación y Redes de Dell Technologies en Rusia.



All Articles