Kilka dni temu projekt Pasz (która rozwija narzędzia do równoległego wykonywania skryptów powłoki) a Linux Foundation ogłosiła, że projekt przejdzie do tego ostatniego która zapewni infrastrukturę i usługi niezbędne do dalszego rozwoju.
I PaSh poczynił wielkie postępy w paralelizowaniu skryptów powłoki, osiągnięcie znaczącej poprawy wydajności. Na nowoczesnych komputerach wieloprocesorowych PaSh może wykonywać zadania, takie jak przeszukiwanie i indeksowanie sieci, analizy związane z COVID19, przetwarzanie języka naturalnego i inne obciążenia w ułamku swojego pierwotnego czasu.
Linux Foundation, organizacja non-profit, która umożliwia masowe innowacje poprzez open source, ogłosiła dzisiaj, że będzie gospodarzem projektu PaSh. PaSh to system do automatycznego zrównoleglania skryptów powłoki POSIX, który optymalizuje programy i przyspiesza czas wykonywania, generując szybsze wyniki dla naukowców zajmujących się danymi, inżynierów, biologów, ekonomistów, administratorów i programistów.
Projekt jest wspierany przez MIT, Rice University, Stevens Institute of Technology oraz University of Pennsylvania i jest zarządzany przez Techniczny Komitet Sterujący, w skład którego wchodzą Nikos Vasilakis, naukowiec z MIT; Michael Greenberg, adiunkt w Stevens Institute of Technology; oraz dr Konstantinos Kallas. student Uniwersytetu Pensylwanii.
Pasz zawiera kompilator JIT, środowisko wykonawcze i bibliotekę adnotacji:
- Runtime ze swojej strony dostarcza zestaw prymitywów do obsługi równoległego wykonywania skryptów.
- Biblioteka adnotacji to ta, która definiuje zestaw właściwości opisujących sytuacje, w których poszczególne polecenia POSIX i GNU Coreutils mogą być zrównoleglone.
- Podczas gdy kompilator jest odpowiedzialny za wykonanie analizy proponowanego skryptu Shell w locie w abstrakcyjnym drzewie składni (AST), dzieli go na fragmenty nadające się do równoległego wykonania i formularze, na ich podstawie nową wersję skryptu, których części mogą być uruchamiane jednocześnie.
Kompilator pobiera informacje o poleceniach, które mogą być zrównoleglone, z biblioteki adnotacji. W procesie generowania równoległej wersji wykonywalnej skryptu, w kodzie podstawiane są dodatkowe konstrukcje Runtime.
„Linux Foundation zapewnia infrastrukturę i usługi zarządzania technicznego, których wymaga PaSh w miarę dojrzewania” — powiedział Nikos Vasilakis, przewodniczący Technicznego Komitetu Sterującego Projektu PaSh. „Zbudowaliśmy projekt, aby poprawić i przyspieszyć wykonywanie skryptów powłoki w obliczu nowych zmian w indeksowaniu, indeksowaniu i przetwarzaniu języka naturalnego”.
„Skrypty powłoki są szeroko stosowane od pół wieku, a ostatnie trendy w kierunku „konteneryzacji” tylko zyskały na znaczeniu – powiedział Michael Greenberg, członek Technicznego Komitetu Sterującego Projektu PaSh. „Poprawne i automatyczne zrównoleglenie skryptów powłoki jest problemem od kilkudziesięciu lat. PaSh obiecuje zwiększenie prędkości dla wszystkich użytkowników powłoki.
Aby przyspieszyć skrypty powłoki, PaSh zapewnia kompilator zrównoleglania typu source-to-source, program, który pobiera skrypt powłoki programisty jako dane wejściowe i zwraca nowy program, który jest znacznie szybszy niż program oryginalny.
Ponieważ PaSh to źródło do źródła, umożliwia sprawdzenie i wykonanie zoptymalizowanego skryptu powłoki przy użyciu tych samych narzędzi, w tym samym środowisku i z tymi samymi danymi, co oryginalny skrypt.
Mała biblioteka uruchomieniowa i związane z nią adnotacje w programach powszechnie używanych w skryptach powłoki uzupełniają obraz, zapewniając kompilatorowi PaSh wydajne prymitywy i obsługując jego kluczowe funkcje.
„Projekt PaSh reprezentuje innowację w informatyce i oprogramowaniu open source” – powiedział Mike Dolan, dyrektor generalny i starszy wiceprezes ds. projektów w Linux Foundation. „Ponieważ rozwój oprogramowania ewoluuje w kierunku uczenia maszynowego, konteneryzacji, sztucznej inteligencji i nie tylko, PaSh wydaje się wspierać programistów i naukowców zajmujących się danymi, którzy potrzebują więcej od swoich narzędzi skryptowych. Cieszymy się, że możemy prowadzić tę ważną pracę w Linux Foundation, naturalnym domu dla takiego projektu.
W końcu jeśli chcesz dowiedzieć się więcej na ten temat notatki, możesz skonsultować szczegóły w poniższym linku.