Przewaga CUDA nie wynika wyłącznie z popularności układów graficznych NVIDIA. To cały ekosystem: kompilatory, biblioteki, narzędzia programistyczne, gotowe kernele, środowiska uruchomieniowe i infrastruktura do serwowania modeli. Wszystkie te elementy ułatwiają budowanie oraz optymalizowanie obciążeń AI pod sprzęt NVIDIA.
Propozycja Modular zakłada jeden przepływ pracy dla różnych rodzajów obliczeń. Platforma ma umożliwiać uruchamianie inferencji AI na procesorach CPU, układach GPU i wyspecjalizowanych akceleratorach, ograniczając potrzebę utrzymywania osobnych implementacji dla każdej rodziny sprzętu.
W ogłoszonym kierunku wymieniono między innymi układy Qualcomm Snapdragon, platformy i karty AMD, procesory graficzne NVIDIA, układy Apple, AWS Trainium, Google TPU oraz akceleratory Qualcomma przeznaczone do centrów danych. Hasło „dowolny model na dowolnym chipie” należy traktować jako ambicję Modular, a nie gwarancję identycznego poziomu wsparcia, dojrzałości i wydajności na wszystkich tych platformach.
Jeśli założenia się sprawdzą, deweloperzy będą mogli zachować większą część kodu modeli i kerneli, zmieniając jednocześnie układ, na którym wykonywane są obliczenia. Wpływy w strategicznej warstwie AI przesunęłyby się wtedy od jednego producenta GPU w stronę neutralnego sprzętowo środowiska obejmującego język, kompilator, runtime, kernele oraz abstrakcje związane z wdrażaniem modeli.
Publiczne zaangażowanie AMD ma szczególne znaczenie, ponieważ firma konkuruje z Qualcommem na kilku rynkach związanych ze sztuczną inteligencją — między innymi w obszarze komputerów AI i akceleratorów. Wsparcie dla warstwy programistycznej należącej do Qualcomma sugeruje, że przenośność między producentami może być dla rynku ważniejsza niż zamykanie deweloperów w jednym, własnościowym ekosystemie.
Dla Modular jest to również odpowiedź na obawy, że po przejęciu projekt stanie się jedynie kwalifikowanym pod kątem Qualcomma opakowaniem programowym. Obecność AMD, a także odniesienia do sprzętu NVIDIA, Apple, AWS i Google, wzmacniają deklarowany wieloukładowy kierunek projektu. To sygnał wiarygodności, ale jeszcze nie dowód, że każdy z wymienionych celów ma takie samo wsparcie produkcyjne.
Mojo 1.0 przedstawiane jest jako stabilny, gotowy do zastosowań produkcyjnych język ogólnego przeznaczenia, zaprojektowany z myślą o heterogenicznych obciążeniach AI. Jego główna obietnica łączy wygodę pracy kojarzoną z Pythonem z wydajnością na poziomie wymaganym w systemach i programowaniu niskopoziomowym.
Kluczowa jest interoperacyjność z Pythonem. Deweloperzy mogą pozostać blisko znanych, pythonowych przepływów pracy, a jednocześnie korzystać z bardziej bezpośredniego dostępu do funkcji potrzebnych w kodzie krytycznym wydajnościowo. Modular opisuje Mojo jako ujednolicony model programowania dla CPU i GPU, a cała platforma ma obsługiwać także kolejne typy akceleratorów.
Udostępnienie kompilatora i narzędzi ma szczególne znaczenie. Zewnętrzni twórcy mogą analizować implementację, zgłaszać i wprowadzać zmiany, przenosić język na kolejne platformy oraz tworzyć i dystrybuować aplikacje zgodnie z warunkami licencji Apache 2.0 z wyjątkami LLVM.
W chwili ogłoszenia Mojo obsługiwało systemy macOS i Linux. Natywne wsparcie Windows zapowiedziano na później, natomiast użytkownicy Windows mogli korzystać z języka za pośrednictwem Windows Subsystem for Linux, czyli WSL.
Qualcomm przejął Modular, aby wzmocnić swoją pozycję programową w obszarze generatywnej i agentowej sztucznej inteligencji — od centrów danych i infrastruktury brzegowej po komputery osobiste oraz zastosowania przemysłowe. Otwarcie Mojo daje tej strategii punkt wejścia dla deweloperów, którzy nie muszą najpierw kupować układów Qualcomma.
Potencjalne korzyści wykraczają poza bezpośrednie przychody z licencji:
To zakład, że zasięg oprogramowania może tworzyć możliwości dla sprzętu. Jeśli Modular stanie się szeroko używaną warstwą inferencji na kilku rodzinach układów, Qualcomm zyska wpływ na stos AI nawet wtedy, gdy konkretne wdrożenie nie będzie działało na Snapdragonie ani akceleratorze Qualcomma do centrów danych.
Kierunek jest obiecujący, ale prawdziwa próba dopiero się zaczyna. Deweloperzy będą musieli sprawdzić zakres obsługi sprzętu, jakość kerneli, zgodność modeli, narzędzia debugowania, proces wdrażania, wsparcie Windows oraz wydajność w porównaniu z dojrzałymi stosami opartymi na CUDA.
Na dziś najuczciwszy wniosek jest węższy niż marketingowe hasła: należąca do Qualcomma firma Modular otworzyła warstwę deweloperską Mojo i wykorzystuje ją do budowy wieloproducentowego ekosystemu AI. Nie udowodniła jeszcze, że jeden otwarty stos zapewni dojrzałość i wydajność na poziomie CUDA na każdym z wymienionych akceleratorów.