Canonical przedstawia narzędzie etrace, uniwersalne narzędzie do profilowania aplikacji

Kanoniczny

Firma Canonical wprowadziła etrace, narzędzie przeznaczone do śledzenia aktywności podczas wykonywania aplikacji. Program przypomina narzędzia strace i ltrace, a także używa ptrace w czasie wykonywania.

Cel główny etrace to debugowanie i analizowanie uruchomionych aplikacji from snap To narzędzie pozwala szybko ocenić, które programy i pliki są używane podczas uruchamiania pakietu snap.

Dostępne są dwie komendy, „exec” i „file”, aby uzyskać informacje na temat uzyskiwania dostępu do plików i uruchamiania innych procesów. W pierwszym przypadku monitorowana jest praca wywołań systemowych związanych z plikami, aw drugim przechwytywana jest rodzina wywołań systemowych wykonawczych.

Etrace to ogólna aplikacja śledząca, przydatna do trzech szerokich celów pomiaru i debugowania:

  • Ile czasu zajmuje aplikacji wyświetlenie okna (graficznego / interfejsu użytkownika) na ekranie.
  • Sekwencja zadań tworzonych i wykonywanych przez program główny w czasie jego wykonywania. Lista plików, do których uzyskano dostęp podczas wykonywania programu.

Te metryki mogą służyć do debugowania potencjalnych problemów w zatrzaskach i natychmiast dowiedz się, co pakiet próbuje przyciągnąć lub znaleźć wąskie gardła wydajności.

Oczywiście, działa również z natywnymi pakietami Linuksa lub dowolnym programem wykonywalnym, choć z nieco ograniczoną funkcjonalnością po wyjęciu z pudełka (na przykład nie ponownie instaluje pakietu natywnego), ale nadal możesz śledzić aplikację i mierzyć, ile czasu zajmuje wyświetlenie okna.

Narzędzie może również służyć do identyfikowania wąskich gardeł wydajności w aplikacjach graficznych opartych na X11 i pokazuje, ile czasu zajmuje inicjalizacja aplikacji przed rozpoczęciem renderowania okna.

Ponadto dostępne są określone opcje przyciągania „–reinstall-snap” i „–clean-snap-user-data”, które umożliwiają ponowne zainstalowanie pakietu przystawki w celu wykonania pomiaru bez pamięci podręcznej lub usunięcie danych użytkownika skojarzonych z pakietem przed działa.

Podstawowe zastosowanie

Etrace jest dostępny jako pakiet przystawki, więc musimy go najpierw zainstalować. Ponieważ etrace jest używany do uruchamiania dowolnych programów, w tym innych pakietów snap, a nawet tradycyjnych pakietów linuxowych, wymaga uprawnień dla całego systemu poprzez klasyczną blokadę, którą można zaakceptować, używając flagi –classic podczas wykonywania następującego polecenia.

Aby zainstalować etrace:

snap install etrace --candidate --classic

Pierwszy przypadek użycia etrace to pomiar czasu potrzebnego aplikacji graficznej na wyświetlenie okna na ekranie.

Zacznijmy od prostej wtyczki, kalkulatora gnome i wykonaj 10 cykli, aby zobaczyć, ile czasu zajmie to wykonanie. Zauważ, że musisz mieć zainstalowany gnome-calculator - zainstaluj gnome-calculator. Tutaj używamy opcji –no-trace, ponieważ nie chcemy pełnego stosu śledzenia, chcemy po prostu, aby etrace mierzył, ile czasu zajmuje uruchomienie; później przejdziemy do pełnych możliwości śledzenia.

etrace --repeat = 10 exec --use-snap-run --no-trace gnome-calculator --cmd-stderr = /dev/null
Total startup time: 1.531152957s
Total startup time: 513.948576ms
Total startup time: 512.980061ms
Total startup time: 515.576753ms
Total startup time: 508.354472ms
Total startup time: 515.734329ms
Total startup time: 508.414271ms
Total startup time: 514.258788ms
Total startup time: 508.407346ms
Total startup time: 511.950964ms

Ponadto, Firma Canonical ogłosiła wdrożenie obsługi snapów dla algorytm kompresji LZO. Algorytm LZO koncentruje się na osiągnięciu maksymalnej szybkości dekompresji kosztem zwiększenia rozmiaru pliku wynikowego. Podczas testowania pakietu z Chromium użycie LZO zamiast domyślnego algorytmu XZ pozwala przyspieszyć publikację pakietu przystawki 2-3 razy, skracając czas potrzebny do dekompresji obrazu SquashFS.

W szczególności pierwsze uruchomienie Chromium z normalnego pakietu deb trwa około 1,7 sekundy.

Pierwsze uwolnienie z przystawki przy użyciu XZ zajmuje 8.1 sekundy, a przy użyciu LZO - 3.1 sekundy. Po ponownym uruchomieniu z buforowanymi danymi czas uruchamiania wynosi 0,6, 0,7 i 0,6 sekundy. odpowiednio.

Rozmiar pakietu zatrzasków wzrósł ze 150 MB do 250 MB w przypadku LZO.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.