Entrevistas

Doug Fuller, VP de Engenharia de Software da Cornelis Networks – Série de Entrevistas

mm
Adicione Unite.AI às suas fontes preferidas no Google

Como Vice-Presidente de Engenharia de Software, Doug é responsável por todos os aspectos da pilha de software da Cornelis Networks, incluindo os drivers da Arquitetura Omni-Path, software de mensagens e sistemas de controle de dispositivos embarcados. Antes de se juntar à Cornelis Networks, Doug liderou equipes de engenharia de software na Red Hat em armazenamento em nuvem e serviços de dados. A carreira de Doug em HPC e computação em nuvem começou no Laboratório de Computação Escalável do Ames National (ATLO ) Laboratory. Após vários papéis em computação de pesquisa universitária, Doug se juntou ao Laboratório Nacional de Oak Ridge do Departamento de Energia dos EUA em 2009, onde desenvolveu e integrou novas tecnologias no Oak Ridge Leadership Computing Facility, um centro de classe mundial.

A Cornelis Networks é uma líder tecnológica que entrega sistemas de interconexão de alto desempenho personalizados para Computação de Alto Desempenho (HPC), Análise de Dados de Alto Desempenho (HPDA) e Inteligência Artificial (IA) para organizações comerciais, científicas, acadêmicas e governamentais de ponta.

O que o atraiu inicialmente para a ciência da computação?

Eu simplesmente parecia gostar de trabalhar com tecnologia. Eu gostava de trabalhar com computadores crescendo; tínhamos um modem em nossa escola que me permitia experimentar a Internet e eu a achei interessante. Como calouro na faculdade, eu conheci um cientista computacional do USDOE enquanto voluntariava para a National Science Bowl. Ele me convidou para visitar seu laboratório de HPC e eu fiquei viciado. Eu sou um geek de supercomputador desde então.

Você trabalhou na Red Hat de 2015 a 2019, quais foram alguns dos projetos em que você trabalhou e quais foram suas principais lições dessa experiência?

Meu principal projeto na Red Hat foi o armazenamento distribuído Ceph. Eu havia me concentrado inteiramente em HPC e isso me deu a oportunidade de trabalhar em tecnologias críticas para a infraestrutura em nuvem. Isso rimava. Muitos dos princípios de escalabilidade, gerenciabilidade e confiabilidade são extremamente semelhantes, mesmo que sejam direcionados a resolver problemas ligeiramente diferentes. Em termos de tecnologia, minha lição mais importante foi que nuvem e HPC têm muito a aprender um com o outro. Estamos construindo projetos diferentes com o mesmo conjunto de Lego. Isso realmente me ajudou a entender como as tecnologias habilitadoras, incluindo sistemas de interconexão, podem ser aplicadas a aplicações de HPC, nuvem e IA. Também foi onde eu realmente entendi o valor do Open Source e como executar a filosofia de desenvolvimento de software de código aberto, upstream-first, que eu trouxe comigo para a Cornelis Networks. Pessoalmente, a Red Hat foi onde eu realmente cresci e amadureci como líder.

Você é atualmente o Vice-Presidente de Engenharia de Software da Cornelis Networks, quais são algumas de suas responsabilidades e como é o seu dia a dia?

Como Vice-Presidente de Engenharia de Software, eu sou responsável por todos os aspectos da pilha de software da Cornelis Networks, incluindo os drivers da Arquitetura Omni-Path, software de mensagens, gerenciamento de sistemas de interconexão e sistemas de controle de dispositivos embarcados. A Cornelis Networks é um lugar emocionante para estar, especialmente neste momento e neste mercado. Por causa disso, não tenho um “dia típico”. Alguns dias eu estou trabalhando com minha equipe para resolver o último desafio tecnológico. Outros dias eu estou interagindo com nossos arquitetos de hardware para garantir que nossos próximos produtos atendam às necessidades de nossos clientes. Eu frequentemente estou no campo reunindo-me com nossa incrível comunidade de clientes e colaboradores, garantindo que entendamos e antecipemos suas necessidades.

A Cornelis Networks oferece redes de próxima geração para aplicações de Computação de Alto Desempenho e IA, poderia compartilhar alguns detalhes sobre o hardware oferecido?

Nosso hardware consiste em uma solução de rede comutada de alto desempenho. Para isso, fornecemos todos os dispositivos necessários para integrar completamente HPC, nuvem e IA. A Omni-Path Host-Fabric Interface (HFI) é uma placa PCIe de baixo perfil para dispositivos de ponto de extremidade. Também produzimos um comutador “top-of-rack” de 48 portas em 1U. Para implantações maiores, fazemos dois comutadores “director-class” totalmente integrados; um que embala 288 portas em 7U e um dispositivo de 1152 portas, 20U.

Poderia discutir o software que gerencia essa infraestrutura e como ele é projetado para diminuir a latência?

Primeiramente, nossa plataforma de gerenciamento embarcada fornece instalação e configuração fáceis, bem como acesso a uma ampla variedade de métricas de desempenho e configuração produzidas por nossos ASICs de comutador.

Nosso software de driver é desenvolvido como parte do kernel do Linux. De fato, submetemos todos os nossos patches de software ao kernel do Linux diretamente. Isso garante que todos os nossos clientes desfrutem de compatibilidade máxima entre distribuições do Linux e integração fácil com outros softwares, como Lustre. Embora não esteja no caminho de latência, ter um driver in-tree dramaticamente reduz a complexidade de instalação.

O gerenciador de sistema de interconexão Omni-Path (FM) configura e roteia um sistema de interconexão Omni-Path. Ao otimizar rotas de tráfego e se recuperar rapidamente de falhas, o FM fornece desempenho e confiabilidade de ponta na indústria em sistemas de interconexão de dezenas a milhares de nós.

O Omni-Path Express (OPX) é nosso software de mensagens de alto desempenho, lançado recentemente em novembro de 2022. Ele foi projetado especificamente para reduzir a latência em comparação com nosso software de mensagens anterior. Executamos simulações precisas a nível de ciclo de nossos caminhos de código de envio e recebimento para minimizar a contagem de instruções e a utilização de cache. Isso produziu resultados dramáticos: quando você está no regime de microssegundos, cada ciclo conta!

Também integramos com as Interfaces OpenFabrics (OFI), um padrão aberto produzido pela OpenFabrics Alliance. A arquitetura modular do OFI ajuda a minimizar a latência, permitindo que softwares de nível superior, como MPI, aproveitem recursos de sistema de interconexão sem chamadas de função adicionais.

A rede inteira também é projetada para aumentar a escalabilidade, poderia compartilhar alguns detalhes sobre como ela consegue escalar tão bem?

Escalabilidade está no núcleo dos princípios de design da Omni-Path. Nos níveis mais baixos, usamos tecnologia de link-layer da Cray para corrigir erros de link sem impacto de latência. Isso afeta sistemas de interconexão de todos os tamanhos, mas é particularmente importante para sistemas de interconexão de grande escala, que naturalmente experimentam mais erros de link. Nosso gerenciador de sistema de interconexão está focado tanto em programar tabelas de roteamento ótimas quanto em fazê-lo de maneira rápida. Isso garante que o roteamento para mesmo os maiores sistemas de interconexão possa ser concluído em um mínimo de tempo.

Escalabilidade também é um componente crítico do OPX. Minimizar a utilização de cache melhora a escalabilidade em nós individuais com grandes contagens de núcleos. Minimizar a latência também melhora a escalabilidade, melhorando o tempo de conclusão para algoritmos coletivos. Usar recursos de interface host-fabric de forma mais eficiente permite que cada núcleo se comunique com mais pares remotos. A escolha estratégica de libfabric nos permite aproveitar recursos de software, como pontos de extremidade escaláveis, usando interfaces padrão.

Poderia compartilhar alguns detalhes sobre como a IA é incorporada em alguns dos fluxos de trabalho da Cornelis Networks?

Ainda não estamos totalmente prontos para falar externamente sobre nossos usos internos e planos para IA. Dito isso, usamos internamente os nossos próprios produtos, então podemos aproveitar os aprimoramentos de latência e escalabilidade que fizemos na Omni-Path para apoiar cargas de trabalho de IA. Isso nos deixa ainda mais animados para compartilhar esses benefícios com nossos clientes e parceiros. Certamente observamos que, como na computação de alto desempenho tradicional, escalar a infraestrutura é o único caminho à frente, mas o desafio é que o desempenho da rede é facilmente sufocado por Ethernet e outras redes tradicionais.

Quais são algumas mudanças que você prevê na indústria com o advento da IA generativa?

Primeiramente, o uso da IA generativa tornará as pessoas mais produtivas – nenhuma tecnologia na história tornou os seres humanos obsoletos. Toda evolução e revolução tecnológica que tivemos, desde a descaroçador de algodão até o tear automático, o telefone, a internet e além, tornaram certos trabalhos mais eficientes, mas não eliminamos a humanidade.

Através da aplicação da IA generativa, acredito que as empresas avançarão tecnologicamente a uma taxa mais rápida porque aqueles que dirigem a empresa terão mais tempo livre para se concentrar nesses avanços. Por exemplo, se a IA generativa fornece previsões mais precisas, relatórios, planejamento, etc. – as empresas podem se concentrar em inovação em seu campo de especialização

Eu sinto especificamente que a IA tornará cada um de nós um especialista multidisciplinar. Por exemplo, como um especialista em software escalável, eu entendo as conexões entre HPC, big data, nuvem e aplicações de IA que impulsionam soluções como a Omni-Path. Equipado com um assistente de IA generativa, eu posso mergulhar mais profundamente no significado das aplicações usadas por nossos clientes. Tenho certeza de que isso nos ajudará a projetar hardware e software ainda mais eficazes para os mercados e clientes que atendemos.

Eu também prevejo uma melhoria geral na qualidade do software. A IA pode funcionar efetivamente como “outro par de olhos” para analisar estaticamente o código e desenvolver insights sobre bugs e problemas de desempenho. Isso será particularmente interessante em escalas grandes, onde problemas de desempenho podem ser especialmente difíceis de detectar e caros para reproduzir.

Finalmente, eu espero e acredito que a IA generativa ajudará nossa indústria a treinar e integrar mais profissionais de software sem experiência prévia em IA e HPC. Nosso campo pode parecer assustador para muitos e pode levar tempo para aprender a “pensar em paralelo”. Fundamentalmente, assim como as máquinas tornaram mais fácil fabricar coisas, a IA generativa tornará mais fácil considerar e raciocinar sobre conceitos.

Há algo mais que você gostaria de compartilhar sobre seu trabalho ou a Cornelis Networks em geral?

Eu gostaria de encorajar qualquer pessoa com interesse em seguir uma carreira em computação, especialmente em HPC e IA. Nesse campo, estamos equipados com os recursos de computação mais poderosos já construídos e os trazemos para enfrentar os maiores desafios da humanidade. É um lugar emocionante para estar, e eu gostei de cada passo do caminho. A IA generativa traz nosso campo a novas alturas, à medida que a demanda por capacidade aumenta drasticamente. Mal posso esperar para ver para onde vamos em seguida.

Obrigado pela ótima entrevista, leitores que desejam aprender mais devem visitar Cornelis Networks.

Antoine é um líder visionário e sócio fundador da Unite.AI, movido por uma paixão inabalável por moldar e promover o futuro da IA e da robótica. Empreendedor que já fundou várias empresas, acredita que a IA transformará a sociedade tanto quanto a eletricidade e costuma falar com entusiasmo sobre o potencial das tecnologias disruptivas e da inteligência artificial geral (AGI).

Como futurista, dedica-se a explorar como essas inovações moldarão o nosso mundo. Além disso, é fundador da Securities.io, uma plataforma voltada ao investimento em tecnologias de ponta que estão redefinindo o futuro e transformando setores inteiros.