Doug Fuller, VP de Ingeniería de Software en Cornelis Networks – Serie de Entrevistas
Doug Fuller, VP de Ingeniería de Software en Cornelis Networks - Entrevistas
Como Vicepresidente de Ingeniería de Software, Doug es responsable de todos los aspectos del conjunto de software de Cornelis Networks, incluyendo los controladores de Omni-Path Architecture, el software de mensajería y los sistemas de control de dispositivos integrados. Antes de unirse a Cornelis Networks, Doug lideró equipos de ingeniería de software en Red Hat en almacenamiento en la nube y servicios de datos. La carrera de Doug en HPC y computación en la nube comenzó en el Laboratorio Nacional Ames en el Laboratorio de Computación Escalable. Después de desempeñar varios roles en la computación de investigación universitaria, Doug se unió al Laboratorio Nacional Oak Ridge del Departamento de Energía de los Estados Unidos en 2009, donde desarrolló e integró nuevas tecnologías en las instalaciones de supercomputación de clase mundial de Oak Ridge.
Cornelis Networks es líder en tecnología y ofrece telas de alto rendimiento diseñadas específicamente para cómputo de alto rendimiento (HPC), análisis de datos de alto rendimiento (HPDA) e inteligencia artificial (IA) a organizaciones comerciales, científicas, académicas y gubernamentales líderes.
¿Qué te atrajo inicialmente de la informática?
Simplemente parecía disfrutar trabajando con tecnología. Disfrutaba trabajando con las computadoras mientras crecía; teníamos un módem en nuestra escuela que me permitía probar Internet y me pareció interesante. Como estudiante de primer año en la universidad, conocí a un científico computacional del USDOE mientras trabajaba como voluntario en el National Science Bowl. Me invitó a visitar su laboratorio de HPC y quedé enganchado. Desde entonces, he sido un fanático de las supercomputadoras.
Trabajaste en Red Hat desde 2015 hasta 2019, ¿en qué proyectos trabajaste y cuáles fueron tus principales conclusiones de esta experiencia?
- Un experto en neurociencia está solicitando un Neuroshield’.
- Navegando por el laberinto de la adopción de IA
- Introducción a la Ciencia de Datos Una Guía para Principiantes
Mi proyecto principal en Red Hat fue el almacenamiento distribuido Ceph. Anteriormente, me había enfocado completamente en HPC y esto me dio la oportunidad de trabajar en tecnologías que eran fundamentales para la infraestructura en la nube. Rima. Muchos de los principios de escalabilidad, administración y confiabilidad son extremadamente similares, aunque están dirigidos a resolver problemas ligeramente diferentes. En términos de tecnología, mi lección más importante fue que la nube y HPC tienen mucho que aprender uno del otro. Cada vez más, estamos construyendo diferentes proyectos con el mismo conjunto de bloques de construcción. Realmente me ha ayudado a comprender cómo las tecnologías habilitadoras, incluidas las telas, pueden influir en las aplicaciones de HPC, nube e IA. También es donde realmente entendí el valor del código abierto y cómo ejecutar la filosofía de desarrollo de software de código abierto, primero aguas arriba, que traje conmigo a Cornelis Networks. Personalmente, Red Hat fue donde realmente crecí y maduré como líder.
Actualmente eres el Vicepresidente de Ingeniería de Software en Cornelis Networks, ¿cuáles son algunas de tus responsabilidades y cómo es tu día promedio?
Como Vicepresidente de Ingeniería de Software, soy responsable de todos los aspectos del conjunto de software de Cornelis Networks, incluyendo los controladores de Omni-Path Architecture, el software de mensajería, la administración de la tela y los sistemas de control de dispositivos integrados. Cornelis Networks es un lugar emocionante para estar, especialmente en este momento y en este mercado. Debido a eso, no estoy seguro de tener un día “promedio”. Algunos días trabajo con mi equipo para resolver el último desafío tecnológico. Otros días interactúo con nuestros arquitectos de hardware para asegurarme de que nuestros productos de próxima generación satisfagan las necesidades de nuestros clientes. A menudo estoy en el campo, reuniéndome con nuestra increíble comunidad de clientes y colaboradores para asegurarme de que entendemos y anticipamos sus necesidades.
Cornelis Networks ofrece redes de próxima generación para aplicaciones de alto rendimiento en computación y IA, ¿puedes compartir algunos detalles sobre el hardware que se ofrece?
Nuestro hardware consiste en una solución de red de tipo tela de alto rendimiento. Con ese fin, proporcionamos todos los dispositivos necesarios para integrar completamente las telas de HPC, nube e IA. La Interfaz de Host-Tela de Omni-Path (HFI) es una tarjeta PCIe de perfil bajo para dispositivos de punto final. También producimos un switch “top-of-rack” de 48 puertos y 1U. Para implementaciones más grandes, fabricamos dos switches “clase director” totalmente integrados; uno que tiene 288 puertos en 7U y un dispositivo de 1152 puertos y 20U.
¿Puedes hablar sobre el software que administra esta infraestructura y cómo está diseñado para reducir la latencia?
En primer lugar, nuestra plataforma de gestión integrada proporciona una instalación y configuración sencillas, así como acceso a una amplia variedad de métricas de rendimiento y configuración producidas por nuestros ASIC de switch.
Nuestro software de controlador se desarrolla como parte del kernel de Linux. De hecho, enviamos todos nuestros parches de software directamente a la comunidad del kernel de Linux. Esto asegura que todos nuestros clientes disfruten de la máxima compatibilidad en todas las distribuciones de Linux y una integración sencilla con otro software como Lustre. Aunque no está en el camino de la latencia, tener un controlador en el kernel reduce drásticamente la complejidad de la instalación.
El administrador de la tela de Omni-Path (FM) configura y enruta una tela de Omni-Path. Al optimizar las rutas de tráfico y recuperarse rápidamente de las fallas, el FM proporciona un rendimiento y confiabilidad líderes en la industria en telas de decenas a miles de nodos.
Omni-Path Express (OPX) es nuestro software de mensajería de alto rendimiento, lanzado recientemente en noviembre de 2022. Fue diseñado específicamente para reducir la latencia en comparación con nuestro software de mensajería anterior. Realizamos simulaciones precisas de los ciclos de ejecución de nuestros códigos de envío y recepción para minimizar la cantidad de instrucciones y la utilización de la caché. Esto produjo resultados dramáticos: ¡cuando estás en el régimen de microsegundos, cada ciclo cuenta!
También nos integramos con las Interfaces OpenFabrics (OFI), un estándar abierto producido por OpenFabrics Alliance. La arquitectura modular de OFI ayuda a minimizar la latencia al permitir que el software de nivel superior, como MPI, aproveche las características de la tela sin llamadas de función adicionales.
Toda la red también está diseñada para aumentar la escalabilidad, ¿podría compartir algunos detalles sobre cómo logra escalar tan bien?
La escalabilidad es uno de los principios fundamentales del diseño de Omni-Path. En los niveles más bajos, utilizamos la tecnología de capa de enlace de Cray para corregir errores de enlace sin impacto en la latencia. Esto afecta a las telas en todas las escalas, pero es especialmente importante para las telas a gran escala, que naturalmente experimentan más errores de enlace. Nuestro administrador de la tela se enfoca tanto en programar tablas de enrutamiento óptimas como en hacerlo de manera rápida. Esto asegura que el enrutamiento incluso para las telas más grandes se pueda completar en un tiempo mínimo.
La escalabilidad también es un componente crítico de OPX. Minimizar la utilización de la caché mejora la escalabilidad en nodos individuales con un gran número de núcleos. Minimizar la latencia también mejora la escalabilidad al mejorar el tiempo de finalización de los algoritmos colectivos. Utilizar nuestros recursos de interfaz de host-tela de manera más eficiente permite que cada núcleo se comunique con más pares remotos. La elección estratégica de libfabric nos permite aprovechar características de software como puntos finales escalables utilizando interfaces estándar.
¿Podría compartir algunos detalles sobre cómo se incorpora la inteligencia artificial en algunos de los flujos de trabajo en Cornelis Networks?
Aún no estamos listos para hablar externamente sobre nuestros usos internos y planes para la inteligencia artificial. Dicho esto, nosotros mismos utilizamos las mejoras de latencia y escalabilidad que hemos realizado en Omni-Path para admitir cargas de trabajo de inteligencia artificial. Esto nos emociona aún más compartir esos beneficios con nuestros clientes y socios. Ciertamente hemos observado que, al igual que en HPC tradicional, expandir la infraestructura es el único camino a seguir, pero el desafío es que el rendimiento de la red puede verse fácilmente obstaculizado por Ethernet y otras redes tradicionales.
¿Cuáles son algunos cambios que prevé en la industria con la llegada de la inteligencia artificial generativa?
En primer lugar, el uso de la inteligencia artificial generativa hará que las personas sean más productivas: ninguna tecnología en la historia ha dejado obsoletos a los seres humanos. Cada evolución y revolución tecnológica que hemos tenido, desde el desmotado de algodón hasta el telar automático, el teléfono, internet y más allá, ha hecho que ciertos trabajos sean más eficientes, pero no hemos eliminado la existencia de la humanidad.
Mediante la aplicación de la inteligencia artificial generativa, creo que las empresas avanzarán tecnológicamente a un ritmo más rápido porque quienes dirigen la empresa tendrán más tiempo libre para centrarse en esos avances. Por ejemplo, si la inteligencia artificial generativa proporciona pronósticos, informes, planificación, etc. más precisos, las empresas pueden centrarse en la innovación en su campo de experiencia.
Específicamente, creo que la inteligencia artificial hará de cada uno de nosotros un experto multidisciplinario. Por ejemplo, como experto en software escalable, comprendo las conexiones entre HPC, big data, nube y aplicaciones de inteligencia artificial que las impulsan hacia soluciones como Omni-Path. Equipado con un asistente de inteligencia artificial generativa, puedo profundizar en el significado de las aplicaciones utilizadas por nuestros clientes. No tengo dudas de que esto nos ayudará a diseñar hardware y software aún más efectivos para los mercados y clientes a los que servimos.
También preveo una mejora general en la calidad del software. La inteligencia artificial puede funcionar de manera efectiva como “otro par de ojos” para analizar estáticamente el código y desarrollar ideas sobre errores y problemas de rendimiento. Esto será particularmente interesante en escalas grandes, donde los problemas de rendimiento pueden ser especialmente difíciles de detectar y costosos de reproducir.
Por último, espero y creo que la inteligencia artificial generativa ayudará a nuestra industria a capacitar y contratar a más profesionales del software sin experiencia previa en inteligencia artificial y HPC. Nuestro campo puede parecer abrumador para muchos y puede llevar tiempo aprender a “pensar en paralelo”. Fundamentalmente, al igual que las máquinas facilitaron la fabricación de cosas, la inteligencia artificial generativa facilitará la consideración y el razonamiento sobre conceptos.
¿Hay algo más que le gustaría compartir sobre su trabajo o sobre Cornelis Networks en general?
Me gustaría animar a cualquier persona con interés a seguir una carrera en informática, especialmente en HPC e inteligencia artificial. En este campo, contamos con los recursos informáticos más poderosos jamás construidos y los utilizamos para enfrentar los mayores desafíos de la humanidad. Es un lugar emocionante para estar y lo he disfrutado en cada paso del camino. La inteligencia artificial generativa lleva nuestro campo a alturas aún más nuevas a medida que aumenta drásticamente la demanda de mayor capacidad. No puedo esperar para ver hacia dónde vamos a continuación.
Gracias por la gran entrevista, los lectores que deseen obtener más información deben visitar Cornelis Networks.