Aktualizacja spowalnia? Naukowcy mają na to sposób

Naukowcy z Texas A&M wraz z informatykami z Intel Labs opracowali narzędzie do identyfikacji źródeł błędów spowodowanych przez aktualizacje oprogramowania.

Publikacja: 17.02.2020 21:05

Aktualizacje oprogramowania, które mają sprawić, że nasze aplikacje będą działać szybciej, prowadzą

Aktualizacje oprogramowania, które mają sprawić, że nasze aplikacje będą działać szybciej, prowadzą do odwrotnej sytuacji

Foto: Adobe Stock

Aktualizowałeś oprogramowanie, miało być szybciej, a jest… No właśnie. Wszyscy podzielamy tę frustrację. Aktualizacje oprogramowania, które mają sprawić, że nasze aplikacje będą działać szybciej, prowadzą do odwrotnej sytuacji. Te błędy, nazywane w informatyce regresjami wydajności, są czasochłonne do naprawienia, ponieważ ich zlokalizowanie w oprogramowaniu wymaga zazwyczaj znacznej interwencji człowieka. Regresja wydajności to zjawisko wiążące się z powstawaniem błędów w oprogramowaniu po zmianie jakiejś części kodu (na przykład wprowadzeniu poprawki dla innego błędu). Może ona skutkować błędnym działaniem innej funkcji programu, która w poprzednich wersjach działała prawidłowo.

CZYTAJ TAKŻE: Bitwa na superkomputery. Ten będzie najszybszy na świecie

Aby pokonać tę przeszkodę, naukowcy z Texas A&M University, we współpracy z informatykami z Intel Labs, opracowali całkowicie zautomatyzowany sposób identyfikowania źródeł błędów powodowanych przez aktualizacje oprogramowania. Ich algorytm, oparty na specjalistycznej formie maszynowego uczenia się, jest gotowy. Pozwala na znalezienie błędów w ciągu kilku godzin, a nie dni. Zespół przedstawił swój projekt na konferencji Neural Information Processing Systems. – Zaprojektowaliśmy wygodne narzędzie do diagnozowania regresji wydajności, które jest kompatybilne z całą gamą oprogramowania i języków programowania, ogromnie zwiększając jego użyteczność – mówi dr Abdullah Muzahid.

W celu określenia źródła błędów w oprogramowaniu debuggery, czyli programy komputerowe służące do analizy innych programów w celu odnalezienia i identyfikacji zawartych w nich błędów, często sprawdzają stan liczników wydajności w jednostce centralnej. Liczniki te są liniami kodu, które monitorują np. sposób wykonania programu w pamięci komputera. Tak więc podczas uruchamiania programu liczniki rejestrują m.in. ilość wejść do określonych lokalizacji pamięci, czas, przez jaki program pozostaje w pamięci, oraz czas jego wyjścia. W związku z tym, gdy zachowanie programu jest nieprawidłowe, liczniki wykorzystywane są do diagnostyki.

– Liczniki wydajności dają wyobrażenie o stanie wykonania programu – powiedział Muzahid. – Jeśli zatem jakiś program nie działa tak, jak powinien, liczniki te zazwyczaj będą sygnalizować anomalne zachowania.

CZYTAJ TAKŻE: Rosja zbuduje własny komputer kwantowy

Komputery stacjonarne i serwery mają setki liczników wydajności, co praktycznie uniemożliwia ręczne śledzenie wszystkich ich statusów, a następnie szukanie nietypowych wzorców, które wskazują na błąd wydajności. Tutaj właśnie rozpoczyna się uczenie maszynowe Muzahida. Używając głębokiego uczenia się, badacze byli w stanie monitorować dane pochodzące z dużej liczby liczników jednocześnie.

Kiedy ich algorytm był gotowy, naukowcy testowali, czy jest w stanie znaleźć i zdiagnozować błąd wydajności w dostępnym na rynku oprogramowaniu używanym przez biznes. Uruchamiali swój algorytm na starszej wersji oprogramowania, a następnie na nowszej, ze zdiagnozowaną regresją wydajności, i stwierdzili, że ich algorytm bez trudu zlokalizował i zdiagnozował błędy w ciągu kilku godzin. Tego typu analiza wykonywana ręcznie może trwać bardzo długo.

Oprócz diagnozowania regresji wydajności w oprogramowaniu nowy algorytm głębokiego uczenia się ma potencjalne zastosowanie także w innych obszarach badań, takich jak rozwój technologii potrzebnej do autonomicznego prowadzenia pojazdów.

Gadżety
Najdziwniejszy pojazd świata jest sterowany myślami. Sposób na zatłoczone miasta?
Gadżety
Apple szykuje rewolucyjną zmianę. Nadciąga składany iPhone
Gadżety
Sprzedaż pecetów wystrzeli. A ceny? Pojawił się potężny bodziec
Gadżety
Oto nowinki technologiczne, które mają podbić świat. Rusza CES 2024
Gadżety
Zmieniają się przyciski w klawiaturach. „Przełomowy moment w historii Windows"