Wywiady

Doug Fuller, Wiceprezes ds. Inżynierii Oprogramowania w Cornelis Networks – Seria Wywiadów

mm
Dodaj Unite.AI do preferowanych źródeł w Google

Jako Wiceprezes ds. Inżynierii Oprogramowania, Doug jest odpowiedzialny za wszystkie aspekty oprogramowania Cornelis Networks, w tym sterowniki architektury Omni-Path, oprogramowanie do komunikacji oraz systemy sterowania urządzeniami wbudowanymi. Przed dołączeniem do Cornelis Networks, Doug kierował zespołami inżynierii oprogramowania w Red Hat, zajmując się magazynowaniem w chmurze i usługami danych. Kariera Douga w dziedzinie HPC i obliczeń w chmurze rozpoczęła się w Laboratorium Scalable Computing w Ames National (ATLO ) Laboratory. Po kilku rolach w uniwersyteckich środowiskach obliczeniowych, Doug dołączył do Oak Ridge National Laboratory w 2009 roku, gdzie rozwijał i integrował nowe technologie w światowej klasie Oak Ridge Leadership Computing Facility.

Cornelis Networks jest liderem technologicznym, dostarczającym specjalistyczne, wysokowydajne tkaniny dla High Performance Computing (HPC), High Performance Data Analytics (HPDA) oraz Sztucznej Inteligencji (AI) dla wiodących organizacji komercyjnych, naukowych, akademickich i rządowych.

Czym zostałeś początkowo zainteresowany informatyką?

Wygląda na to, że po prostu lubiłem pracować z technologią. Lubiłem pracować z komputerami w czasach szkolnych; mieliśmy modem w szkole, który pozwalał mi wypróbować Internet i znalazłem to interesującym. Jako pierwszoklasista na uczelni, spotkałem się z naukowcem komputerowym z USDOE, który zaprosił mnie do zwiedzenia jego laboratorium HPC i zostałem zakochany. Od tamtej pory jestem fanatykiem superkomputerów.

Pracowałeś w Red Hat od 2015 do 2019, jakie projekty realizowałeś i jakie były Twoje najważniejsze wnioski z tego doświadczenia?

Mojnym głównym projektem w Red Hat było rozproszone magazynowanie Ceph. Poprzednio skupiłem się wyłącznie na HPC, co dało mi okazję do pracy nad technologiami, które były kluczowe dla infrastruktury chmury. To się zgadza. Wiele zasad skalowalności, zarządzalności i niezawodności jest bardzo podobnych, nawet jeśli są one ukierunkowane na rozwiązywanie nieco innych problemów. Pod względem technologii, moim najważniejszym wnioskiem było to, że chmura i HPC mają wiele do nauczenia się od siebie nawzajem. Budujemy różne projekty z tego samego zestawu klocków Lego. To bardzo mi pomogło zrozumieć, jak technologie umożliwiające, w tym tkaniny, mogą wpłynąć na aplikacje HPC, chmury i AI. To również miejsce, w którym naprawdę zrozumiałem wartość oprogramowania open source i jak wykonać filozofię rozwoju oprogramowania open source, którą przywiozłem do Cornelis Networks. Osobiście, Red Hat to miejsce, w którym naprawdę dorosłem i dojrzewałem jako lider.

Jesteś obecnie Wiceprezesem ds. Inżynierii Oprogramowania w Cornelis Networks, jakie są Twoje odpowiedzialności i jaki wygląda Twój przeciętny dzień?

Jako Wiceprezes ds. Inżynierii Oprogramowania, jestem odpowiedzialny za wszystkie aspekty oprogramowania Cornelis Networks, w tym sterowniki architektury Omni-Path, oprogramowanie do komunikacji, zarządzanie tkaniną oraz systemy sterowania urządzeniami wbudowanymi. Cornelis Networks to ekscytujące miejsce, szczególnie w tym momencie i na tym rynku. Z tego powodu, nie jestem pewien, czy mam “przeciętny” dzień. Niektóre dni pracuję z moim zespołem, aby rozwiązać najnowsze wyzwania technologiczne. Inne dni взаимодействую z naszymi architektami sprzętu, aby upewnić się, że nasze produkty następnej generacji spełnią wymagania naszych klientów. Często jestem w terenie, spotykając się z naszą wspaniałą społecznością klientów i współpracowników, aby upewnić się, że rozumiemy i przewidujemy ich potrzeby.

Cornelis Networks oferuje następną generację sieci dla aplikacji High Performance Computing i AI, czy mógłbyś podzielić się szczegółami na temat oferowanego sprzętu?

Nasze urządzenia składają się z wysokowydajnej, przełączanej tkaniny sieciowej. W tym celu dostarczamy wszystkie niezbędne urządzenia do pełnej integracji tkanin HPC, chmury i AI. Interfejs Omni-Path Host-Fabric (HFI) to niskoprofilowa karta PCIe dla urządzeń końcowych. Produkuje również 48-portowy, 1U “top-of-rack” przełącznik. Dla większych wdrożeń, tworzymy dwa w pełni zintegrowane “dyrektorskie” przełączniki; jeden, który mieści 288 portów w 7U i urządzenie 1152-portowe, 20U.

Czy mógłbyś omówić oprogramowanie, które zarządza tą infrastrukturą i jak jest ono zaprojektowane, aby zmniejszyć opóźnienia?

Po pierwsze, nasza platforma zarządzania wbudowaną zapewnia łatwą instalację i konfigurację, a także dostęp do szerokiej gamy metryk wydajności i konfiguracji wygenerowanych przez nasze układy ASIC przełączników.

Nasze oprogramowanie sterujące jest rozwijane jako część jądra systemu Linux. W rzeczywistości, składamy wszystkie nasze poprawki oprogramowania do społeczności jądra Linux bezpośrednio. To gwarantuje, że wszyscy nasi klienci korzystają z maksymalnej kompatybilności między dystrybucjami Linux i łatwej integracji z innym oprogramowaniem, takim jak Lustre. Chociaż nie jest to w ścieżce opóźnienia, posiadanie sterownika w drzewie dramatycznie redukuje złożoność instalacji.

Menadżer tkaniny Omni-Path (FM) konfiguruje i trasuje tkaninę Omni-Path. Optymalizując trasy ruchu i szybko odzyskując od awarii, FM zapewnia przewodzenie wiodącej wydajności i niezawodności na tkaninach od kilkudziesięciu do kilku tysięcy węzłów.

Omni-Path Express (OPX) to nasze oprogramowanie do komunikacji o wysokiej wydajności, które zostało niedawno wydane w listopadzie 2022 roku. Zostało ono specjalnie zaprojektowane, aby zmniejszyć opóźnienia w porównaniu z naszym poprzednim oprogramowaniem do komunikacji. Wykonaliśmy symulacje cyklu dokładnego naszych ścieżek kodu wysyłania i odbierania, aby zminimalizować liczbę instrukcji i wykorzystanie pamięci cache. To dało dramatyczne rezultaty: gdy jesteśmy w rejestrze mikrosekund, każdy cykl ma znaczenie!

Także zintegrowaliśmy się z OpenFabrics Interfaces (OFI), otwartym standardem wyprodukowanym przez OpenFabrics Alliance. Modularna architektura OFI pomaga minimalizować opóźnienia, umożliwiając wyższemu poziomowi oprogramowania, takiego jak MPI, wykorzystanie funkcji tkaniny bez dodatkowych wywołań funkcji.

Cała sieć jest również zaprojektowana, aby zwiększyć skalowalność, czy mógłbyś podzielić się szczegółami na temat tego, jak dobrze się skaluje?

Skalowalność jest podstawowym elementem projektowania Omni-Path. Na najniższym poziomie, wykorzystujemy technologię korekcji błędów łącza Cray, która nie ma wpływu na opóźnienia. To wpływa na tkaniny we wszystkich skalach, ale jest szczególnie ważne dla dużych tkanin, które naturalnie doświadczają więcej błędów łącza. Nasz menadżer tkaniny jest ukierunkowany zarówno na programowanie optymalnych tabel trasowania, jak i na robienie tego w jak najkrótszym czasie. To gwarantuje, że trasowanie nawet dla największych tkanin może być wykonane w minimalnym czasie.

Skalowalność jest również kluczowym elementem OPX. Minimalizowanie wykorzystania pamięci cache poprawia skalowalność na poszczególnych węzłach z dużą liczbą rdzeni. Minimalizowanie opóźnień również poprawia skalowalność, poprawiając czas ukończenia dla algorytmów zbiorowych. Wykorzystanie naszych zasobów interfejsu hosta w sposób bardziej efektywny umożliwia każdemu rdzeniowi komunikację z większą liczbą odległych peerów. Strategiczny wybór libfabric pozwala nam wykorzystać funkcje oprogramowania, takie jak skalowalne punkty końcowe przy użyciu standardowych interfejsów.

Czy mógłbyś podzielić się szczegółami na temat tego, jak AI jest włączona do niektórych workflow w Cornelis Networks?

Jeszcze nie jesteśmy gotowi, aby zewnętrznie omówić nasze wewnętrzne wykorzystanie i plany dotyczące AI. Można jednak powiedzieć, że “jedziemy na własnym paliwie”, więc możemy skorzystać z ulepszeń opóźnień i skalowalności, które wprowadziliśmy do Omni-Path, aby wspierać obciążenia AI. To nas jeszcze bardziej ekscytuje, aby podzielić się tymi korzyściami z naszymi klientami i partnerami. Zauważyliśmy, że podobnie jak w tradycyjnym HPC, skalowanie infrastruktury na zewnątrz jest jedyną drogą do przodu, ale wyzwaniem jest to, że wydajność sieci jest łatwo tłumiona przez Ethernet i inne tradycyjne sieci.

Co sądzisz, jakie zmiany nastąpią w branży wraz z pojawieniem się generatywnej AI?

Przede wszystkim, użycie generatywnej AI sprawi, że ludzie będą bardziej produktywni – żadna technologia w historii nie uczyniła ludzi przestarzałymi. Każda ewolucja i rewolucja technologiczna, jaką mieliśmy, od czesania bawełny po automatyczne maszyny tkackie, telefon, internet i dalej, uczyniły pewne zadania bardziej efektywnymi, ale nie wyeliminowały pracy ludzkiej.

Poprzez zastosowanie generatywnej AI, uważam, że firmy będą technologicznie bardziej zaawansowane, ponieważ osoby zarządzające firmą będą miały więcej wolnego czasu, aby skupić się na tych postępach. Na przykład, jeśli generatywna AI zapewnia bardziej dokładne prognozowanie, raportowanie, planowanie itp. – firmy mogą skupić się na innowacjach w swojej dziedzinie specjalizacji

Czuję, że AI sprawi, że każdy z nas będzie wielodyscyplinarnym ekspertem. Na przykład, jako ekspert od oprogramowania skalowalnego, rozumiem połączenia między HPC, dużymi danymi, chmurą i aplikacjami AI, które napędzają rozwiązania takie jak Omni-Path. Wyposażony w asystenta generatywnej AI, mogę zagłębić się w znaczenie aplikacji używanych przez naszych klientów. Nie mam wątpliwości, że to pomoże nam zaprojektować jeszcze bardziej skuteczne oprogramowanie i sprzęt dla rynków i klientów, którym służymy.

Także przewiduję ogólną poprawę jakości oprogramowania. AI może skutecznie funkcjonować jako “kolejna para oczu” do statycznej analizy kodu i rozwoju wglądu w błędy i problemy z wydajnością. To będzie szczególnie interesujące w dużych skalach, gdzie problemy z wydajnością mogą być szczególnie trudne do zidentyfikowania i kosztowne do odtworzenia.

Wreszcie, mam nadzieję, że generatywna AI pomoże naszej branży w szkoleniu i wdrożeniu większej liczby profesjonalistów od oprogramowania bez wcześniejszego doświadczenia w AI i HPC. Nasza dziedzina może wydawać się zastraszająca dla wielu i może zajęć trochę czasu, aby nauczyć się “myśleć równolegle”. Podstawowo, tak jak maszyny ułatwiły wytwarzanie rzeczy, generatywna AI ułatwi rozważanie i rozumienie pojęć.

Czy jest coś jeszcze, co chciałbyś podzielić się na temat swojej pracy lub Cornelis Networks w ogóle?

Chciałbym zachęcić każdego, kto ma zainteresowanie, do podjęcia kariery w dziedzinie obliczeń, szczególnie w HPC i AI. W tej dziedzinie, mamy do dyspozycji najpotężniejsze zasoby obliczeniowe, jakie kiedykolwiek zbudowano, i wykorzystujemy je do walki z największymi wyzwaniami ludzkości. To ekscytujące miejsce, i cieszyłem się każdym krokiem. Generatywna AI przywodzi naszą dziedzinę do jeszcze nowszych wysokości, ponieważ popyt na rosnącą zdolność rośnie dramatycznie. Nie mogę się doczekać, aby zobaczyć, dokąd będziemy iść dalej.

Dziękuję za wspaniały wywiad, czytelnicy, którzy chcą dowiedzieć się więcej, powinni odwiedzić Cornelis Networks.

Antoine jest wizjonerskim liderem i współzałożycielem Unite.AI, który jest zmotywowany niezachwianą pasją do kształtowania i promowania przyszłości sztucznej inteligencji i robotyki. Jako serialowy przedsiębiorca, wierzy, że sztuczna inteligencja będzie tak samo przełomowa dla społeczeństwa, jak elektryczność, i często jest złapany na tym, że zachwala potencjał przełomowych technologii i AGI.

Jako futurysta, jest poświęcony badaniu, jak te innowacje ukształtują nasz świat. Ponadto, jest założycielem Securities.io, platformy skupiającej się na inwestowaniu w najnowocześniejsze technologie, które zmieniają przyszłość i przebudowują całe sektory.