rspack-sftrace
Profiluj wydajność Rspacka poprzez śledzenie wywołań funkcji Rust za pomocą LLVM XRay.
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Rspack Sftrace to narzędzie do analizy wydajności, które wykorzystuje instrumentację LLVM XRay do śledzenia wszystkich wywołań funkcji Rust w kompilatorze Rspack. Konwertuje zebrane dane do formatu protobuf Perfetto, umożliwiając szczegółową diagnostykę wąskich gardeł i problemów z wydajnością. Pracujesz z przykładami takimi jak React? Uruchamiaj śledzenie bezpośrednio w katalogu projektu i przechowuj artefakty lokalnie. Możesz filtrować ślady według nazw funkcji za pomocą wyrażeń regularnych, aby skupić się na interesujących Cię obszarach kodu.
Jak używać
Sklonuj repozytorium sftrace i zbuduj narzędzie: git clone https://github.com/quininer/sftrace, przejdź do katalogu, uruchom cargo build --release, a następnie utwórz katalog instalacyjny i skopiuj libsftrace.so do wskazanej lokalizacji za pomocą poleceń z dokumentacji.
Zbuduj wiązanie Rspacka z włączoną obsługą sftrace, uruchamiając SFTRACE=1 pnpm build:binding:profiling w głównym katalogu monorepo.
Opcjonalnie: wygeneruj plik filtru z symboli funkcji, aby ograniczyć śledzenie do interesujących Cię funkcji. Użyj polecenia sftrace filter z plikiem .node wiązania, podając wyrażenia regularne funkcji, które chcesz śledzić.
Przejdź do katalogu przykładu (np. examples/react), w którym chcesz uruchomić śledzenie.
Utwórz katalog na artefakty śledzenia (np. sftrace-YYYYMMDD-HHMMSS) i uruchom sftrace record z poleceniem budowania projektu (np. pnpm build), aby zebrać dane o wydajności.
Otwórz wygenerowany plik sf.log w narzędziu Perfetto, aby przeanalizować ślady wywołań funkcji i zidentyfikować wąskie gardła wydajności.