Opis metod profilowania
Microsoft Visual Studio PremiumNarzędzia profilowania zapewniają pięć metod, których można zebrać danych wydajności.W tym temacie opisano różne metody i sugeruje kilka scenariuszy, w których zbierania danych z konkretnej metody mogą być odpowiednie.
Wymagania
- Visual Studio Ultimate, Visual Studio Premium, Visual Studio Professional
[!UWAGA]
Ulepszone funkcje zabezpieczeń w systemach Windows 8 i Windows Server 2012 wymagają znaczących zmian w sposobie, w jaki program Profiler środowiska Visual Studio zbiera dane na tych platformach.Sklep Windows aplikacje wymagają również nowych technik gromadzenia.Zobacz Profilowanie 8 systemu Windows i Windows Server 2012 aplikacji.
Metoda |
Opis |
---|---|
Próbkowanie |
Zbiera dane statystyczne na temat wykonanej przez aplikację. |
Instrumentacja |
Gromadzi informacje szczegółowe terminy, o każdym wywołaniu funkcji. |
Współbieżność |
Zbiera szczegółowe informacje o aplikacji wielowątkowych. |
Pamięci .NET |
Zbiera szczegółowe informacje o .NET pamięci alokacji oraz wyrzucania elementów bezużytecznych. |
Poziom interakcji |
Zbiera informacje dotyczące synchronicznych wywołań funkcji ADO.NET z bazą danych SqlServer. Profilowanie interakcji warstwy mogą być gromadzone przy użyciu Visual Studio Ultimate, Visual Studio Premium, lub Visual Studio Professional.Jednakże poziom interakcji profilowania danych można wyświetlać tylko w Visual Studio Premium lub Visual Studio Ultimate. |
Korzystając z metody profilowania, można również zbierać dane dodatkowe, takie jak liczniki wydajności oprogramowania i sprzętu.Aby uzyskać więcej informacji, zobacz Trwa zbieranie dodatkowych danych wydajności.
Próbkowanie
Profilowanie metoda pobierania próbek zbiera dane statystyczne na temat pracy, która jest wykonywana przez aplikację podczas uruchomienia profilowania.Metoda pobierania próbek jest lekki i ma mały wpływ na wykonanie metody aplikacji.
Pobieranie próbek jest domyślna metoda Microsoft Visual Studio Premium narzędzia profilowania.Jest to przydatne dla następujących czynności:
Początkowe poszukiwań wydajność aplikacji.
Bada problemy z wydajnością, które mogą obejmować wykorzystanie procesora (CPU).
Profilowanie metoda pobierania próbek przerywa w ustalonych odstępach czasu procesora komputera i zbiera stos wywołań funkcji.Liczy wyłączne próbki są zwiększane dla funkcji, który jest wykonywany i liczy włącznie są zwiększane dla wszystkich wywołanie funkcji na stosie wywołań.Pobieranie próbek raporty prezentują sum z tych liczników dla modułu PROFILOWANEGO, funkcja, wiersz kodu źródłowego i instrukcji.
Domyślnie profiler ustawia interwał pobierania próbek do cykli Procesora.Typ interwału można zmienić na inny licznika wydajności Procesora i można ustawić liczbę zdarzeń, licznik dla interwału.Można również zbierać warstwy interakcji profiling(TIP) danych, który zawiera informacje dotyczące kwerend, które są wprowadzone do bazy danych serwera SQL przez ADO.NET.
Zbieranie statystyki wydajności za pomocą pobierania próbek
Opis pobierania próbek wartości danych w narzędzia profilowania
Widoki danych metody pobierania próbek Profiler
Instrumentacja
Instrumentacja profilowania metoda zbiera szczegółowe terminy wywołań funkcji w aplikacji PROFILOWANEGO.Profilowanie Instrumentacji przydaje się do następujących czynności:
Badanie wąskich gardeł wejścia/wyjścia, takich jak We/Wy dysku.
Dokładne zbadanie danego modułu lub zestaw funkcji.
Metoda Instrumentacji wstrzykuje kod do pliku binarnego, który zawiera informacje dotyczące czasu dla każdej funkcji w pliku oprzyrządowanego i każdego wywołania funkcji, wykonanej za pomocą tych funkcji.Instrumentacja identyfikuje również, gdy wywołuje funkcję do pracy dla operacji, takich jak zapisywanie do pliku.Raporty Instrumentacji używają cztery wartości do reprezentowania całkowitym czasem spędzonym w funkcji lub źródła wiersza kodu:
Upłynięte Inclusive - całkowita długość okresu rozkłada się wykonywania funkcji lub źródła wiersza.
Aplikacja Inclusive - czas, który przeznacza się wykonywania funkcji lub źródła wiersza, z wyłączeniem czasu, która jest wydawana w wywołaniach systemu operacyjnego.
Upłynięte Exclusive - czas, który przeznacza się wykonywanie kodu w treści funkcji lub źródła wiersza kodu.Czasu jest na wykonywanie funkcji, które są wywoływane za pomocą funkcji lub źródła wiersza jest wyłączone.
Aplikacja Exclusive - czas, który przeznacza się wykonywanie kodu w treści funkcji lub źródła wiersza kodu.Czasu jest na wykonywanie wywołań systemu operacyjnego i czasu jest na wykonywanie funkcji, które są wywoływane za pomocą funkcji lub źródła wiersza jest wyłączone.
Liczniki wydajności Procesora i oprogramowania można również zbierać, przy użyciu metody instrumentacji.
Opis narzędzia profilowania wartości danych Instrumentacji
Zbierania szczegółowych danych czasu przy użyciu Instrumentacji
Widoki danych metody Instrumentacji Profiler
Współbieżność
Profilowanie współbieżności zbiera informacje o aplikacjach wielowątkowych.Konfliktu zasobów profilowania zbiera informacje stosu wywołań szczegółowe za każdym razem, gdy tego konkurencyjnych wątki są zmuszeni do odczekania dla dostępu do zasobu udostępnionego.Wizualizacja współbieżności zbiera również uzyskać więcej ogólnych informacji na temat współdziałania aplikacji wielowątkowych z samego sprzętu, systemu operacyjnego oraz innych procesów na komputerze-hoście:
Raporty rywalizacji zasobu Wyświetl całkowitą liczbę twierdzenia i całkowity czas oczekiwania zasobu dla modułów, funkcje, wiersze kodu źródłowego i instrukcje, w których wystąpił podczas oczekiwania.Oś czasu wykresy pokazują również twierdzeń, jak ich wystąpienia.
Podglądacza współbieżności Wyświetla graficzny informacje, które można użyć, aby zlokalizować wąskie gardła wydajności, Procesora underutilization, wątek rywalizacji, migracji wątek, synchronizacja opóźnień, obszary nakładające się we/wy i inne informacje.Jeśli to możliwe, łącza produkcja graficzny, wywołanie stosu i źródła kodu danych.Współbieżność wizualizacji danych mogą zostać pobrane tylko do wiersza polecenia i aplikacji systemu Windows.
Opis zasobu rywalizacja o wartości danych narzędzia profilowania
Zbieranie wątku i procesu współbieżności danych
Widoki danych konflikty zasobów
Pamięć .NET
Metoda profilowania alokacji pamięci .NET przerywa procesor komputera w każdej alokacji obiektu.NET Framework w PROFILOWANEGO aplikacji.Gdy również zbierane są dane okres istnienia obiektu, profiler przerwanie po każdym.NET Framework wyrzucania elementów bezużytecznych.
Profiler zbiera informacje o typie, rozmiar i liczbę obiektów, które zostały utworzone w alokacji lub zostały zniszczone w kolekcji garbage.
Gdy dojdzie do zdarzenia alokacji, profiler zbiera dodatkowe informacje stosu wywołań funkcji.Liczy wyłącznego przeznaczenia są zwiększane dla funkcji, która jest w trakcie wykonywania i liczy włącznie są zwiększane dla wszystkich wywołanie funkcji na stosie wywołań.Raporty .NET prezentują sum z tych liczników dla typów PROFILOWANEGO, moduły, funkcje, wiersze kodu źródłowego i instrukcje.
W przypadku wystąpienia kolekcji garbage profiler zbiera dane o obiektach, które zostały zniszczone i informacje o obiektach każde pokolenie kolekcji garbage.Na końcu profilowania Uruchom profiler zapisuje dane dotyczące obiektów, które nie zostały jawnie zniszczone.Raport czas życia obiektów są wyświetlane sumy dla każdego typu, która została przydzielona w perspektywie profilowania.
Profilowanie pamięci .NET służy w trybie pobierania próbek lub Instrumentacji.Tryb w którym możesz wybrać nie wpływa na podział i okres istnienia obiektu zgłasza, że są unikatowe to.NET pamięci profilowania:
Po uruchomieniu pamięci .NET profilowania w tryb pobierania próbek, profiler.NET używa zdarzenia alokacji pamięci jako przedział i wyświetla liczbę obiektów, które zostały przydzielone i całkowita liczba bajtów, które zostały przydzielone jako wartości włącznie i wyłączności w raportach.
Po uruchomieniu pamięci .NET profilowania w trybie Instrumentacji, szczegółowe informacje są zbierane razem z wartościami włącznie i wyłącznego przydziału.
Zbieranie.Alokacja pamięci netto i okres istnienia danych
Narzędzia profilowania.Widoki danych pamięci netto
Poziom interakcji
Profilowanie warstwy interakcje dodaje informacje do profilowania pliku danych o synchroniczne ADO.NET wywołuje między ASP.NET strony lub innych aplikacji i SQL Server bazy danych.Dane obejmują numer i czas rozmowy i razy maksymalne i minimalne.Poziom interakcji danych można dodać do profilowania danych zebranych z pobierania próbek, Instrumentacji, pamięci .NET lub metody współbieżności.
Poziom interakcji danych zebranych przez narzędzia profilowania
Zbieranie danych o interakcji między warstwami przy użyciu programu Visual Studio IDE
Zobacz też
Zadania
Jak: profilu witryny sieci Web lub aplikacji sieci Web przy użyciu Kreatora wydajności