Aracılığıyla paylaş


Visual Studio Performans Profili Oluşturucu, Windows Performans Araç Seti ve PerfView arasında seçim

Bu kılavuz, Microsoft'taki birincil genel amaçlı performans profili oluşturma teknolojilerinin genel bir karşılaştırmasını sağlar: Visual Studio Performans Profili Oluşturucu, Windows Performans Araç Seti ve PerfView.

Bu araçlar, Windows'ta uygulamalarınızın performans özelliklerini tanılamanıza ve anlamanıza yardımcı olabilir. Bu kılavuzun amacı, birbirinin yerine ne zaman kullanılacağına ilişkin bir genel bakış sağlamak, güçlü yönlerini vurgulamak ve içerdikleri işlevlere kısa bir genel bakış sunmaktır.

Genel Bakış

Visual Studio Performans Profili Oluşturucu, mevcut Visual Studio proje sisteminde geliştirme aşamasında olan bir uygulamanın performans özelliklerini hızla anlamak için Visual Studio ekibi tarafından oluşturulur. Gücü, etkin geliştirme projesiyle sıkı bir şekilde tümleştirmek, en yaygın performans senaryolarının analizini basitleştirmek ve yalnızca tek bir uygulamanın hızlı ve kolay bir şekilde toplanmasıdır.

Windows Performans Araç Seti, Tüm bilgisayarın sistem genelindeki özelliklerini bir kerede anlamak için Windows ekibi tarafından oluşturulur. Donanım ve sürücüleri analiz etme gereğinden büyüse de, yazılım sorunlarını anlamak için de çok etkilidir. Gücü, tüm makineden aynı anda büyük miktarlarda bilgi toplamada olduğundan, çok işlemli konular, donanım veya sürücülerle ilgili olanlar ve karmaşık senaryolar bu araçlara iyi uyum sağlar.

PerfView, .NET uygulamalarının performansını anlamak için .NET ekibi tarafından oluşturulur. Windows Performans Araç Seti gibi, aynı anda makinenin tamamından büyük miktarda bilgi toplayabilir. Atık toplama, tam zamanında derleme ve yönetilen iş parçacığı havuzu gibi .NET çalışma zamanı hizmetleri hakkında çok ayrıntılı bilgiler görüntüleme özelliğiyle ayırt edilir. PerfView yönetilen, yerel ve karma modlu uygulamalar için kullanılabilir.

Bu araçlar arasında örtüşme vardır. Genellikle bir araçta bir sorunu keşfetmeye başlayabilir ve aynı senaryonun farklı bir görünümü için diğerine geçebilirsiniz. Diğer durumlarda, araçlardan biri diğerlerinden daha etkili olacaktır.

Kurulum

Visual Studio Performans Profilleyici, Visual Studio'nun bir bileşenidir ve geliştirme ortamının geri kalanıyla aynı yükleme sihirbazı aracılığıyla yüklenebilir.

Windows Performans Araç Seti, Windows Değerlendirme ve Dağıtım Setikapsamında ayrı olarak indirilebilir. Ancak komut satırı Performans Kaydedicisi aracı, PowerShell ve Komut İstemi gibi kabuklardan varsayılan yol değişkeninde kullanılabilen wpr.exe olarak Windows 10 ve Windows 11 ile önceden yüklenir.

Performans Çözümleyicisi,Microsoft Store'da bir uygulaması olarak kullanılabilir.

PerfView, PerfView GitHub Sürümleri sayfasında tek başına indirme olarak kullanılabilir. Yükleme gerekmez.

Gelişmiş performans analizi senaryoları için özelleştirme

Windows Performans Araç Seti ayrıca gelişmiş performans analizi senaryolarına hizmet sunabilen iki genişletilebilirlik noktası sunar.

  • Microsoft Performans Araç Seti SDK'sı izleme verilerinin işlenmesini yönetir ve geliştiricilerin kendi eklentilerini oluşturarak Windows Performans Çözümleyicisi'nde görüntülenmelerini sağlar.
  • .NET TraceProcessing , izleme bilgilerini sonuçta elde edilen tablolara işleyebilen özel araçların yazılmasına olanak tanır ve özellikle toplu izleme verilerinin otomatik analizi için kullanışlıdır.

PerfView benzer şekilde performans izlemelerini program aracılığıyla kullanmaya yönelik .NET TraceEvent kitaplığını temel alır. TraceEvent, performans izleme verilerinin özel analizini gerçekleştirmek için PerfView'un bağımsız olarak kullanılabilir.

Uyarı

Performans analizi senaryolarının çalışması için, test edilen Windows uygulamasıyla bağıntılı simgelerine erişmeniz gerekir. Visual Studio ile oluştururken, bunlar çözümünüzle oluşturulan veya sembol sunucularından yakalananhata ayıklama senaryosu ayarlarındakiyle aynı şekilde konumlandırılır. Diğer kitaplıkları veya bileşenleri analiz ederken, çözümlemenizi tamamlamak için bu bileşenlerin simgelerini bulmanız gerekir.

Araç seçmeyle ilgili dikkat edilmesi gerekenler

Seçilecek araç, keşfetmeye çalıştığınız performans senaryosuna bağlıdır. Araçlar arasındaki işlevlerin ve özelliklerin karşılaştırması aşağıdaki tabloda verilmiştir:

  • İyi desteklenen araçlar, aracın amaçlanan görev için tasarlandığı ve sağlam ve ayrıntılı sonuçlar elde ettiği anlamına gelir.
  • Desteklenen araç, istenen sonuçları elde etmek için ek yapılandırma veya adımlar gerektirebileceği anlamına gelir. Kategori içinde sınırlı bir eylem kapsamı içerebilir.
  • Desteklenmiyor , aracın bu kullanım için tasarlanmadığı anlamına gelir.

Tavsiye

Mümkün olduğunda Visual Studio Profiling ile başlayın. Visual Studio araçlarının yapabileceklerinin sınırlarına ulaştığınızda Windows Performans Araç Seti veya PerfView geçin.

Durum Visual Studio Performans Profili Oluşturucu Windows Performans Araç Seti PerfView
Genel kullanım konuları
dosya boyutunu izleme İyi destekleniyor Destekleniyor Destekleniyor
Takım Temini İyi destekleniyor İyi destekleniyor İyi destekleniyor
Genişletilebilirlik Setleri Desteklenmiyor İyi destekleniyor İyi destekleniyor
İş kapsamıyla ilgili dikkat edilmesi gerekenler
Tek İşlem veya Proje İyi destekleniyor Destekleniyor Destekleniyor
Birden Çok İşlem Desteklenmiyor İyi destekleniyor İyi destekleniyor
Donanımla ilgili önemli noktalar
CPU Kullanımı İyi destekleniyor İyi destekleniyor İyi destekleniyor
GPU Kullanımı İyi destekleniyor İyi destekleniyor Desteklenmiyor
Bellek Kullanımı İyi destekleniyor İyi destekleniyor İyi destekleniyor
Cihaz Girişi/Çıkışı Desteklenmiyor İyi destekleniyor İyi destekleniyor
Güç Kullanımı Desteklenmiyor İyi destekleniyor Desteklenmiyor
Sistem Kolları Desteklenmiyor İyi destekleniyor İyi destekleniyor
Code dili desteğiyle ilgili önemli noktalar
C/C++ desteği İyi destekleniyor İyi destekleniyor İyi destekleniyor
.NET desteği İyi destekleniyor İyi destekleniyor İyi destekleniyor
JavaScript desteği Destekleniyor Destekleniyor Destekleniyor
Senaryosunda dikkat edilmesi gerekenler
Windows için Olay İzleme Destekleniyor İyi destekleniyor İyi destekleniyor
Kompozisyon Desteklenmiyor İyi destekleniyor Desteklenmiyor
HTML/Edge/Internet Explorer/Webview Desteklenmiyor İyi destekleniyor Desteklenmiyor
XAML/WinUI Destekleniyor İyi destekleniyor İyi destekleniyor
Ses/Video işlem hatları ve hatalar Desteklenmiyor İyi destekleniyor Desteklenmiyor
Veritabanı zamanlaması İyi destekleniyor Desteklenmiyor Desteklenmiyor
Yönetilen nesne ayırma ve çöp toplama İyi destekleniyor Desteklenmiyor İyi destekleniyor
Özel Senaryolar Desteklenmiyor İyi destekleniyor İyi destekleniyor

Genel kullanım konuları

Performans analizine yeni başlayanlar için, mevcut Visual Studio geliştirme paketinde iyi tümleşik bir özellik olarak Visual Studio Performans Profili Oluşturucu'yu öneririz. Gereksinimlerinizi karşılıyorsa PerfView üzerinden Visual Studio Performans Profili Oluşturucu'yu kullanmanızı öneririz.

Daha fazla güç ve çok yönlülük gerektirebilecek daha karmaşık sistem performansı analizi için, performans analizi görevlerini gerçekleştirmek için kullanılan iki araçdan oluşan Windows Performans Araç Seti'ni öneririz:

  • Windows Performans Kaydedicisi, hem komut satırı aracı olarak hem de grafik arabirimiyle kullanılabilir, izleme oturumunu yakalamaktan sorumludur.
  • Windows Performans Çözümleyicisi daha sonra toplanan verileri işlemek ve yüksek oranda özelleştirilebilir bir analiz görünümü sağlamak için açılır.

Visual Studio Performans Profili Oluşturucu'nun sunduğu avantajlardan bazıları şunlardır:

  • Başlıca etki alanlarında performans analizine iyi bir giriş.
  • , proje yapılandırmasına göre otomatik olarak çözümleme ve hata ayıklamanın karmaşıklıklarının çoğunu işler.
  • Önemli endişe alanlarını otomatik olarak vurgular.
  • Daha küçük, daha odaklanmış bir veri kümesine ve daha küçük bir koleksiyon kapsamına sahiptek bir uygulamaya odaklanmak daha iyi .
  • Daha belirgin odak, profil oluşturma sırasında diğer uygulamalar ve makine donanımı üzerinde daha az etki , oluşturulan ve depolanan izleme dosyalarının genel boyutunun azalmasına ve toplama tamamlandıktan sonra bilgileri gözden geçirmek için artan işlem hızına anlamına gelir.
  • bir izlemenin başlatılması ve tamamlanması daha az zaman alır. Visual Studio Performans Profili Oluşturucu sistemin tamamıyla değil yalnızca uygulamayla ilgilendiğinden gözden geçirip geri dönebilirsiniz.
  • Veri toplama ve sonuçta elde edilen analizler, Visual Studioiçinde gerçekleştirilmekte ve toplama işlemi tamamlandığında analiz sayfaları otomatik olarak başlatılmaktadır. Rapor görünümü ayrıca otomatik olarak ilgiyi sık kullanılan noktalara veya eylem alanlarına odaklama eğilimindedir.

Windows Performans Araç Seti'nin sunduğu avantajlardan bazıları şunlardır:

  • Bol belgeler ve bloglar, Windows Performans ve Tanılama ekipleri tarafından başlamanıza yardımcı olmak için sağlanır.
  • Çok büyük dosyaları toplamak için, özellikle arka plan görevleriyle meşgul olan sistemlerden, daha iyidir. Bilgileri toplamak için kullanılan, daha sonra Windows Performans Çözümleyicisi arabiriminde filtrelenecek bir genel amaçlı araçtır.
  • Genişletilebilirlik noktaları kullanılarak gelişmiş performans analizi senaryoları için özelleştirilebilme özelliği. (Aşağıya bakın)

PerfView'un sunduğu avantajlardan bazıları şunlardır:

  • Uygulama içinden bağlantılı kapsamlı yerleşik belgeleri ve İnternet'ten erişilebilir nasıl yapılır videoları.
  • Üretim ortamlarına yalnızca PerfView.exekopyalayarak dağıtmak kolaydır.
  • Yeniden üretilmesi zor sorunları yakalamak için uçuş kaydedici modu .
  • .NET çalışma zamanı hizmetleri için çok ayrıntılı tanılama.
  • Özel görünümler için genişletilebilir.

Çalışma kapsamıyla ilgili dikkat edilmesi gerekenler

tek bir uygulama ve özellikle tek bir işlemçevreleyen analizler için, tüm araçlar performans verilerini toplamak ve anlamak için oldukça etkilidir. Uygulama kaynağı ve proje sistemi zaten mevcut olduğunda, avantaj özellikle Visual Studio Performans Profili Oluşturucu'nun tarafında olur. Visual Studio Performans Profili Oluşturucu altyapısı, F5 hata ayıklama özelliğine benzer şekilde bir ikili dosyadan CPU, GPU ve bellek bilgilerini toplamak için tasarlanmıştır. Bu koleksiyon mekanizması, eldeki tek bir uygulamaya odaklanırken daha sıkı bir dönüş ve geliştirici döngüsü sunar.

Visual Studio gerekli özelliklere sahip değilse, koleksiyon gereksinimleri (üretim ortamlarında yaygın olarak bulunur) nedeniyle çalıştırılamıyorsa veya daha ayrıntılı .NET tanılama özellikleri gerekiyorsa PerfView'ı seçin.

birden çok çapraz işlem isteği içeren daha karmaşık durumlar için, donanım cihazları ve sürücüleriveyaWindows platform teknolojilerine ayrıntılı bir şekilde göz atın. Windows Performans Araç Seti en uygun seçenektir.

Donanımla ilgili dikkat edilmesi gerekenler

Visual Studio Performans Profil Oluşturucu, Windows Performans Araç Seti ve PerfView, Visual Studio Performans Profil Oluşturucu ve Windows Performans Araç Seti ek olarak GPU'yu destekleyerek ana donanım bileşenleri için CPU ve belleği tanılayabilir. Genellikle araçlar bu alanlardaki giriş analizine uygundur.

CPU kullanımı üç araçla da analiz edilebilir ve genellikle örnekleme kullanılarak yakalanır. Örnekleme, uygulamadan belirli aralıklarla yığın izlemelerini yakalar ve bunların ne sıklıkta göründüğüne ilişkin bir derecelendirme sağlar. Her iki araç da bu davranışı, doğru hesap için enstrümantasyon kullanacak şekilde ayarlayabilir.

GPU kullanımı hem Visual Studio Performans Profili Oluşturucu hem de Windows Performans Araç Seti ile analiz edilebilir ve bilgilere genel bir genel bakış sağlanır.

Bellek kullanımı, yığın alanı ve yığındaki ayırmalarla ilişkili yığınlar hakkında bilgi toplayan üç araçla da analiz edilebilir.

Ağ, disk, cihazlar, tanıtıcılar veya sistemin genel güç tüketimini analiz etme gibi daha karmaşık senaryolar ortaya çıktığında, Windows Performans Araç Seti analizi işlemek için daha donanımlıdır. Bu veriler, istekleri çeşitli donanım bileşenlerine gönderdiğinden en iyi şekilde doğrudan işletim sisteminden toplanır. Windows Performans Araç Seti, işletim sistemiyle birlikte geliştirilmiştir, bu nedenle sistem odaklı bu bilgi kategorisini toplamaya hazır ve yeteneklidir.

Kod dili desteğiyle ilgili dikkat edilmesi gerekenler

Bu diller Windows işletim sistemi kod tabanında kullanıldığından, Windows Performans Araç Seti öncelikli olarak C ve C++ desteğine odaklanır.

Visual Studio Performance Profiler desteği, başlangıçta C# ve ASP.NET gibi .NET kaynaklı teknolojilere odaklanır ve ardından daha geniş bir programlama dili yelpazesine doğru genişler.

PerfView. .NET ve yerel (C ve C++) uygulamaları destekler. .NET çalışma zamanları ve ASP.NET web iş yükleri ile ilgili özellikler hakkında derin bilgilere sahiptir.

Bu, Visual Studio'nun C veya C++ kodunu çözümleyemediğini ya da Windows Performans Çözümleyicisi'nin .NET uygulamalarını çözümleyemediğini veya PerfView'un web uygulamalarını çözümleyemediğini söylemek değildir. Analiz edilen uygulamayla en yakından eşleşen araçla başlamak, her aracın güçlü yönlerinden yararlanmak için en iyisidir.

Senaryoyla ilgili dikkat edilmesi gerekenler

Tüm araçlar, uygulama performansını incelemek için senaryo tabanlı çeşitli seçenekler içerir.

Visual Studio Performans Profili Oluşturucu seçenekleri analiz edilen uygulama içinde bulunan .NET, kullanıcı arabirimi (UI) ve veritabanlarına odaklanma eğilimindedir.

Windows Performans Araç Seti, işletim sistemi bileşenleri ve çerçeveleri üzerinde yoğunlaşma eğilimindedir; bunlar arasında kompozisyon, tarayıcı görünümleri ve gerçek zamanlı işlem hatlarındaki aksaklıklar bulunur.

Daha özelleştirilmiş bir çözüm gerektiren senaryolar için, Windows Performans Kaydedicisi hem sistem genelindeki koleksiyon hem de uygulamayla ilgili toplama verilerini tek bir kayıt oturumunda birleştirebilir. Bu işlevsellik, bir uygulama geliştiricisinin, ürünü geliştirmek için kullanılandan farklı olabilecek donanımlardan performans verileri istemek için müşterilere dağıtmak üzere eksiksiz bir çözüm sunmalarını sağlar. Bu mekanizma hakkında daha fazla bilgi Windows Performans ve Tanılama ekibi tarafından Özel Profiller Yazma blog serisinde bulunabilir.

PerfView, .NET uygulamalarının ve çalışma zamanlarının derin araştırmalarına yöneliktir, ancak çok işlemli ve işletim sistemi düzeyindeki araştırmalarda olduğu kadar yeteneklidir.

Özet

Visual Studio Performans Profili Oluşturucu, Windows Performans Araç Seti ve PerfView, Microsoft'un uygulamanızın performansını anlamanız için kullanabileceğiniz üç güçlü araçtır. İhtiyaçlarınızı en iyi karşılayacak aracın seçilmesi, özel durumunuzla ilgili çeşitli konuları gerektirir. Bu kılavuzun akıllı performans analizi seçimleri yapmanız için gereken bilgileri sağlayacağını umuyoruz, ayrıca bu sayfanın aşağısında geri bildirimde bulunmanızı memnuniyetle karşılıyoruz. Özellikle Windows geliştirme performansıyla ilgili sorunlar için lütfen Windows Geliştirme Performansı deposunabir dosya açın.