Interviuri
Doug Fuller, Vicepreședinte de Inginerie Software la Cornelis Networks – Seria de Interviuri

În calitate de Vicepreședinte de Inginerie Software, Doug este responsabil pentru toate aspectele stivelor de software ale Cornelis Networks, inclusiv driverele de arhitectură Omni-Path, software de mesagerie și sisteme de control al dispozitivelor încorporate. Înainte de a se alătura Cornelis Networks, Doug a condus echipe de inginerie software la Red Hat în domeniul stocării în cloud și serviciilor de date. Cariera lui Doug în HPC și calcul în cloud a început la Laboratorul de Calcul Scalabil al Ames National (ATLO ) Laboratory. După mai multe roluri în computing universitar, Doug s-a alăturat Laboratorului Național Oak Ridge al Departamentului de Energie al SUA în 2009, unde a dezvoltat și integrat tehnologii noi la facilitățile de calcul de înaltă performanță de la Oak Ridge.
Cornelis Networks este un lider tehnologic care oferă țesături de înaltă performanță, special concepute pentru Calcul de Înaltă Performanță (HPC), Analitică de Date de Înaltă Performanță (HPDA) și Inteligență Artificială (AI) pentru organizații comerciale, științifice, academice și guvernamentale de top.
Ce v-a atras inițial spre știința calculatoarelor?
Mi s-a părut că îmi place să lucrez cu tehnologia. Îmi plăcea să lucrez cu calculatoarele crescând; aveam un modem la școală care îmi permitea să încerc Internetul și l-am găsit interesant. Ca student în anul întâi la facultate, am cunoscut un om de știință computațional al Departamentului de Energie al SUA, care m-a invitat să vizitez laboratorul său de HPC și am fost capturat. De atunci, sunt un “geek” al supercalculatoarelor.
Ați lucrat la Red Hat din 2015 până în 2019, care au fost unele dintre proiectele pe care le-ați lucrat și care au fost principalele concluzii ale acestei experiențe?
Proiectul meu principal la Red Hat a fost stocarea distribuită Ceph. Înainte, m-am concentrat exclusiv pe HPC și acesta mi-a oferit oportunitatea de a lucra la tehnologii critice pentru infrastructura cloud. Se potrivește. Multe dintre principiile de scalabilitate, gestionare și fiabilitate sunt extrem de similare, chiar dacă sunt destinate să rezolve probleme ușor diferite. În ceea ce privește tehnologia, cea mai importantă concluzie a fost că cloud-ul și HPC au multe de învățat unul de la celălalt. Construim proiecte diferite cu același set de piese Lego. M-a ajutat să înțeleg cum tehnologiile de bază, inclusiv țesăturile, pot fi folosite în aplicații HPC, cloud și AI. De asemenea, este locul unde am înțeles cu adevărat valoarea codului deschis și cum să executăm filozofia de dezvoltare software “upstream-first” pe care am adus-o cu mine la Cornelis Networks. Din punct de vedere personal, Red Hat a fost locul unde am crescut și m-am maturizat ca lider.
Sunteți în prezent Vicepreședinte de Inginerie Software la Cornelis Networks, care sunt unele dintre responsabilitățile dvs. și cum arată o zi obișnuită pentru dvs.?
În calitate de Vicepreședinte de Inginerie Software, sunt responsabil pentru toate aspectele stivelor de software ale Cornelis Networks, inclusiv driverele de arhitectură Omni-Path, software de mesagerie, gestionarea țesăturii și sistemele de control al dispozitivelor încorporate. Cornelis Networks este un loc excitant de a fi, mai ales în acest moment și pe acest segment. Din cauza acestui fapt, nu sunt sigur că am o “zi obișnuită”. Unele zile lucrez cu echipa mea pentru a rezolva ultima provocare tehnologică. Alte zile interacționez cu arhitecții noștri de hardware pentru a ne asigura că produsele noastre viitoare vor satisface nevoile clienților noștri. Sunt adesea în teren, întâlnindu-mă cu comunitatea noastră minunată de clienți și colaboratori, asigurându-mă că înțelegem și anticipăm nevoile lor.
Cornelis Networks oferă o generație nouă de rețele pentru aplicații de Calcul de Înaltă Performanță și Inteligență Artificială, ați putea împărtăși detalii despre hardware-ul oferit?
Hardware-ul nostru constă într-o soluție de țesătură de rețea comutată de înaltă performanță. În acest scop, oferim toate dispozitivele necesare pentru a integra pe deplin țesăturile HPC, cloud și AI. Interfața Host-Fabric Omni-Path (HFI) este o cartelă PCIe de profil scăzut pentru dispozitivele finale. De asemenea, producem un comutator “top-of-rack” de 48 de porturi de 1U. Pentru implementări mai mari, realizăm două comutatoare “director-class” complet integrate; unul care încorporează 288 de porturi în 7U și un dispozitiv de 1152 de porturi, 20U.
Puteți discuta despre software-ul care gestionează această infrastructură și cum este proiectat pentru a reduce latența?
Mai întâi, platforma noastră de gestionare încorporată oferă o instalare și o configurare ușoară, precum și acces la o varietate largă de metrice de performanță și configurare generate de ASIC-urile noastre de comutare.
Software-ul nostru de drivere este dezvoltat ca parte a nucleului Linux. De fapt, trimitem toate patch-urile noastre de software către comunitatea nucleului Linux direct. Acest lucru se asigură că toți clienții noștri se bucură de compatibilitate maximă între distribuțiile Linux și o integrare ușoară cu alte software, cum ar fi Lustre. Deși nu se află pe calea latenței, având un driver “in-tree” reduce semnificativ complexitatea instalației.
Managerul de țesătură Omni-Path (FM) configurează și rulează o țesătură Omni-Path. Prin optimizarea rutelor de trafic și recuperarea rapidă din defecte, FM oferă o performanță și o fiabilitate de nivel industrial pe țesături de la zeci la mii de noduri.
Omni-Path Express (OPX) este software-ul nostru de mesagerie de înaltă performanță, lansat recent în noiembrie 2022. A fost proiectat special pentru a reduce latența în comparație cu software-ul nostru de mesagerie anterior. Am efectuat simulări exacte de ciclu pentru căile noastre de cod de trimitere și de primire pentru a minimiza numărul de instrucțiuni și utilizarea cache-ului. Acest lucru a produs rezultate dramatice: când sunteți în regimul microsecundelor, fiecare ciclu contează!
De asemenea, am integrat cu Interfețele OpenFabrics (OFI), un standard deschis produs de Alianța OpenFabrics. Arhitectura modulară OFI ajută la minimizarea latenței, permițând software-ului de nivel superior, cum ar fi MPI, să exploateze funcțiile țesăturii fără apeluri de funcții suplimentare.
Rețeaua întreagă este, de asemenea, proiectată pentru a crește scalabilitatea, ați putea împărtăși detalii despre modul în care poate scala atât de bine?
Scalabilitatea este la baza principiilor de proiectare ale Omni-Path. La nivelurile cele mai joase, utilizăm tehnologia de corecție a erorilor de legătură Cray, care corectează erorile de legătură fără impact asupra latenței. Acest lucru afectează țesăturile la toate nivelurile, dar este deosebit de important pentru țesăturile mari, care experimentează în mod natural mai multe erori de legătură. Managerul nostru de țesătură se concentrează atât pe programarea tabelelor de rutare optime, cât și pe realizarea acestui lucru într-un mod rapid. Acest lucru se asigură că rutarea pentru chiar și cele mai mari țesături poate fi finalizată într-un timp minim.
Scalabilitatea este, de asemenea, un component critic al OPX. Minimizarea utilizării cache-ului îmbunătățește scalabilitatea pe noduri individuale cu număr mare de nuclee. Minimizarea latenței îmbunătățește, de asemenea, scalabilitatea prin îmbunătățirea timpului de finalizare pentru algoritmii colectivi. Utilizarea resurselor interfeței noastre de host-țesătură într-un mod mai eficient permite fiecărui nucleu să comunice cu mai mulți parteneri distanți. Alegerea strategică a libfabric ne permite să exploatăm funcții software, cum ar fi punctele finale scalabile, utilizând interfețe standard.
Puteți împărtăși detalii despre modul în care Inteligența Artificială este încorporată în unele dintre fluxurile de lucru de la Cornelis Networks?
Încă nu suntem pregătiți să discutăm în exterior despre utilizările și planurile noastre interne pentru IA. Cu toate acestea, “mâncăm ceea ce producem”, astfel încât putem profita de îmbunătățirile de latență și scalabilitate pe care le-am făcut la Omni-Path pentru a sprijini sarcinile de lucru IA. Ne face și mai entuziaști să împărtășim aceste beneficii cu clienții și partenerii noștri. Am observat cu siguranță că, la fel ca în HPC-ul tradițional, scalarea infrastructurii este singura cale înainte, dar provocarea constă în faptul că performanța rețelei poate fi ușor împiedicată de rețelele tradiționale, cum ar fi Ethernet.
Ce schimbări preconizați în industrie cu apariția Inteligenței Artificiale Generative?
În primul rând, utilizarea Inteligenței Artificiale Generative va face oamenii mai productivi – nicio tehnologie din istorie nu a făcut ca oamenii să devină învechi. Fiecare evoluție și revoluție tehnologică pe care am avut-o, de la mașina de cusut la rază, la telefon, internet și dincolo, au făcut anumite locuri de muncă mai eficiente, dar nu am lucrat omenirea din existență.
Prin aplicarea Inteligenței Artificiale Generative, cred că companiile vor avansa tehnologic la un ritm mai rapid, deoarece cei care conduc compania vor avea mai mult timp liber pentru a se concentra pe aceste avansări. De exemplu, dacă Inteligența Artificială Generativă oferă previziuni, raportări, planificări etc. mai precise, companiile pot se concentra pe inovații în domeniul lor de expertiză.
Mă simt în mod special că IA va face ca fiecare dintre noi să devină un expert multidisciplinar. De exemplu, ca expert în software scalabil, înțeleg legăturile dintre HPC, big data, cloud și aplicațiile AI care conduc spre soluții precum Omni-Path. Echipat cu un asistent de Inteligență Artificială Generativă, pot să mă adâncesc mai mult în înțelesul aplicațiilor utilizate de clienții noștri. Sunt convins că acest lucru ne va ajuta să proiectăm hardware și software și mai eficiente pentru piețele și clienții pe care îi deservim.
De asemenea, prevăd o îmbunătățire generală a calității software-ului. IA poate funcționa eficient ca “o altă pereche de ochi” pentru a analiza static codul și a dezvolta insight-uri în ceea ce privește bug-urile și problemele de performanță. Acest lucru va fi deosebit de interesant la scară largă, unde problemele de performanță pot fi deosebit de dificil de detectat și scumpe de reproducere.
În final, sper și cred că Inteligența Artificială Generativă va ajuta industria noastră să instruiască și să integreze mai mulți profesioniști în software fără experiență anterioară în IA și HPC. Domeniul nostru poate părea intimidant pentru mulți și poate dura timp pentru a învăța să “gândim în paralel”. În mod fundamental, la fel cum mașinile au făcut ca producția să fie mai ușoară, Inteligența Artificială Generativă va face ca considerarea și raționamentul despre concepte să fie mai ușor.
Există altceva pe care ați dori să îl împărtășiți despre munca dvs. sau despre Cornelis Networks în general?
Aș dori să încurajez pe oricine are interesul de a urma o carieră în informatică, mai ales în HPC și IA. În acest domeniu, suntem echipați cu cele mai puternice resurse de calcul create vreodată și le aducem la îndeplinire împotriva celor mai mari provocări ale umanității. Este un loc excitant de a fi, și mi-a plăcut în fiecare etapă a drumului. Inteligența Artificială Generativă aduce domeniul nostru la înălțimi și mai noi, pe măsură ce cererea pentru o capacitate în creștere crește drastic. Abia aștept să văd unde vom ajunge mai departe.
Mulțumim pentru acest interviu minunat; cititorii care doresc să afle mai multe despre Cornelis Networks ar trebui să viziteze Cornelis Networks.












