Zespołowi informatyków udało się opracować nowy system, który - według twórców - ma znacznie przyspieszyć działanie niektórych programów, zapewnić dokładność wyników i jednocześnie uwolnić od błędów. Ich dzieło wspiera programy wykonywane w powłoce Unix. Metoda polega na dzieleniu komponentów programu na części, które mogą być uruchamiane jednocześnie na wielu procesorach.
Naukowcy z dziedziny informatyki opracowali nową technikę, która ma znacząco przyspieszyć działanie programów komputerowych, zapewniając jednocześnie dokładność wyników. Co więcej, system znany jako PaSh ma być także wolny od błędów. Ich rozwiązanie działa z programami w powłoce Unix, który jest popularnym środowiskiem programistycznym. Kluczem do sukcesu jest dzielenie komponentów programu na części, które mogą być uruchamiane jednocześnie na wielu procesorach. Umożliwia to programom wykonywanie zadań, takich jak indeksowanie stron internetowych, przetwarzanie języka naturalnego, czy analizowanie danych w ciągu ułamka czasu, jaki normalnie byłby im im na to potrzebny. Nikos Vasilakis, naukowiec w Laboratorium Informatyki i Sztucznej Inteligencji w MIT wspomniał, że wielu specjalistów z różnych dziedzin nauki korzysta z programów, które od teraz można znacząco przyspieszyć bez obawy o uzyskanie nieprawidłowych wyników.
System PaSh umożliwia zrównoleglenie poszczególnych części programu, dzięki czemu ten działa szybciej. Całość ma zapewniać także dokładność wyników oraz brak błędów.
System ułatwia także pracę programistom. Co ciekawe - jak donosi źródło - jednym ze współautorów projektu jest uczeń warszawskiego Liceum im. Staszica. Elastyczna struktura Unixa umożliwia obsługę skryptów napisanych w wielu językach, jedocześnie utrudniając ich równoległe wykonywanie za pomocą tradycyjnych metod. Sama praca nad równoległością programu może okazuje się bardzo problematyczna, bowiem niektóre jego części są zależne od innych. Kiedy program napisany jest w jednym języku, programiści mają wyraźne informacje o jego funkcjach, co znacząco ułatwia im rozpoznanie, które elementy mogą być wykonywane równolegle.
Problem pojawia się jednak w powłoce Unix. Właśnie tutaj z pomocą przychodzi PaSh, wykorzystujący etap przetwarzania wstępnego. System wstawia adnotacje do komponentów programu, które mogą być równoległe. Następnie podejmuje próbę zrównoleglenia tych części podczas działania, dokładnie w momencie, gdy dochodzi do każdej z nich. Inaczej mówiąc, działa na czas. System jest w stanie przyspieszyć o wiele więcej komponentów niż standardowe metody, które próbują wykonać ten proces z wyprzedzeniem. Ponadto, takie działanie PaSh gwarantuje zwracanie dokładnych wyników. Kiedy z kolei natrafi na część programu, która może być zależna od innego komponentu, uruchamia oryginalną wersję, przez co nie powoduje błędów.
Zobacz także:
- NVIDIA podobno opóźni premierę kart GeForce RTX 4000. Gracze mogą jednak na tym skorzystać
- AMD Ryzen Threadripper 5990X podkręcony do 4,82 GHz uzyskał ogromny wynik w Cinebench R23
- Antminer E9 oferuje wydajność 25 kart GeForce RTX 3080, a kosztuje znacznie mniej...
Pokaż / Dodaj komentarze do: Dużo szybciej działające programy bez strachu przed błędami? Nowy system ma to zapewnić