Finansowanie
BoolSi pozyskuje 6 milionów dolarów, aby przekształcić oprogramowanie w niestandardowy krzem przy użyciu sztucznej inteligencji

Przyspieszenie sprzętowe od dawna obiecywało dramatyczne zwiększenie wydajności, ale dostęp do tych zysków tradycyjnie wymagał specjalistycznej wiedzy w dziedzinie projektowania chipów. Startup z Bostonu, BoolSi, ma na celu zmianę tego równania. Firma ogłosiła rundę seed o wartości 6 milionów dolarów, którą poprowadziła Fine Structure Ventures, z udziałem Pillar VC, Fifth Quarter Ventures i Coalition Ventures, przy pracy nad uczynieniem przyspieszenia sprzętowego dostępnym dla deweloperów oprogramowania.
Funding ten wesprze uruchomienie prywatnej bety BoolSi pod koniec tego roku i przyspieszy rozwój platformy, która automatycznie konwertuje oprogramowanie w przyspieszacze sprzętowe działające na Field Programmable Gate Arrays (FPGAs), bez wymogu, aby inżynierowie uczyli się języków opisu sprzętu lub tradycyjnych workflowów projektowania chipów.
Odtwarzanie ścieżki od kodu do sprzętu
W sercu podejścia BoolSi leży prosta idea: deweloperzy oprogramowania powinni móc osiągać zyski wydajności na poziomie sprzętu bez stawania się inżynierami sprzętu.
Zamiast tłumaczenia kodu źródłowego linia po linii w cyfrowe obwody, BoolSi trenuje modele uczenia maszynowego, aby nauczyć się zachowania programu. Gdy system zrozumie transformację między wejściami a wyjściami, sieć neuronowa przechodzi w pełny cyfrowy obwód, który można analizować, weryfikować i optymalizować przy użyciu istniejących narzędzi do projektowania chipów. Według firmy, wynikowy sprzęt nie jest aproksymacją oryginalnego kodu, ale dokładną implementacją jego zachowania.
Firma opisuje to jako nową warstwę kompilacji, która znajduje się między oprogramowaniem a krzemem. Deweloperzy identyfikują punkt gorący obliczeniowy w językach C, C++ lub innych obsługiwanych językach, a BoolSi generuje niestandardowy przyspieszacz sprzętowy wraz z wymaganymi artefaktami wdrożeniowymi. Wynikiem jest koprocesor dostosowany specjalnie do tego obciążenia.
Dlaczego FPGAs są ważne
Początkowy focus BoolSi skierowany jest na FPGAs, kategorię chipów, które można dostosować po produkcji. FPGAs stały się coraz bardziej istotne w robotyce, sztucznej inteligencji na krawędzi i systemach osadzonych, ponieważ mogą wykonywać specjalistyczne obciążenia z znacznie niższą latencją i zużyciem mocy niż tradycyjne procesory CPU.
Pomimo ich zalet, rozwój FPGA pozostaje trudny dla większości zespołów oprogramowania. Istniejące narzędzia często wymagają wiedzy w językach opisu sprzętu, takich jak Verilog lub VHDL, tworząc stromą krzywą uczenia, która ogranicza przyjęcie. BoolSi próbuje usunąć tę barierę całkowicie, traktując generowanie sprzętu jako problem kompilacji, a nie projektowania sprzętu.
Od miesięcy inżynierii do popołudnia
Jednym z bardziej uderzających przykładów firmy jest 10-tysięczna linia biblioteki wyrażeń regularnych w języku C, używana do identyfikacji adresów e-mail w strumieniu tekstu. Uruchamiany na procesorze ARM Cortex-A9, obciążenie zostało ukończone w 2,66 milisekundach. Skompilowany w przyspieszacz sprzętowy wygenerowany przez BoolSi, czas wykonywania spadł do 0,325 milisekund. Użycie ośmiu równoległych agentów sprzętowych zmniejszyło latencję jeszcze bardziej do 0,042 milisekund, co stanowi 63-krotną poprawę w porównaniu z linią bazową CPU.
Szerokie wizje sięgają poza izolowane zadania przyspieszania. BoolSi wierzy, że wiele nowoczesnych aplikacji zawiera pętle powtarzalne, obsługę protokołów, systemy kontroli i jądra przetwarzania, które mogą skorzystać z dedykowanego sprzętu. Zamiast zmuszać deweloperów do przepisywania tych składników w specjalistycznych językach sprzętu, firma chce, aby oryginalne oprogramowanie samo w sobie służyło jako specyfikacja.
Robotyka i systemy osadzone jako pierwsze
BoolSi BoolSi jest początkowo ukierunkowana na deweloperów osadzonych pracujących w robotyce, gdzie opóźnienia, wydajność energetyczna i wydajność w czasie rzeczywistym często decydują o tym, czy produkt odnosi sukces. Aplikacje takie jak fuzja czujników, kontrola silnika, estymacja przepływu optycznego i kontrola predykcyjna są naturalnymi kandydatami do przyspieszania sprzętowego.
Długoterminowa ambicja firmy jest znacznie większa. Wyobraża sobie przyszłość, w której każdy procesor CPU jest połączony z logiką rekonfigurowalną, która może być dostosowana do obciążeń uruchamianych obok niego. Gdy sztuczna inteligencja wspomagana rozwój oprogramowania nadal zmniejsza czas potrzebny do tworzenia aplikacji, BoolSi twierdzi, że następny znaczący skok produktywności może pochodzić z automatycznego konwertowania tych aplikacji w niestandardowy sprzęt.
Jeśli ta wizja okaże się osiągalna, rozróżnienie między inżynierią oprogramowania a inżynierią sprzętu może stać się znacznie mniej sztywne niż jest dzisiaj. Na razie firma koncentruje się na udowodnieniu, że niestandardowy krzem może stać się tak dostępny, jak pisanie kodu.












