Aracılığıyla paylaş


İzlenecek yol: Profil oluşturma uygulamaları

Bu gidiş yolu performans sorunlarını belirlemek için bir uygulamanın nasıl özetinin oluşturulacağını gösterir.

Bu gidiş yolunda, yönetilen bir uygulamanın profilini oluşturma ve uygulamadaki performans sorunlarını belirlemek ve yalıtmak için örnekleme ve araçları düzenleme işleminde adım adım ilerleyeceksiniz.

Bu gidiş yolunda, aşağıdaki adımları izleyeceksiniz:

  • Bir uygulamayı örnekleme yöntemini kullanarak profilini çıkarmak.

  • Performans sorununu bulmak ve gidermek için örneklenmiş profil oluşturma sonuçlarını analiz edin.

  • Bir uygulamanın araçlar yöntemini kullanarak profilini oluşturma.

  • Performans sorununu bulmak ve gidermek için araçlı profil oluşturma sonuçlarını analiz edin.

Önkoşullar

Profil oluşturma tarafından sağlanan bilgilerle çalışmak için, hata ayıklama simge bilgileri kullanılabilir en iyi yöntemdir.

Örnekleme Yöntemini kullanarak profil oluşturma

Örnekleme, söz konusu işlemin düzenli olarak etkin işlev belirlemek için yokladığı profil oluşturma yöntemidir.Elde edilen veriler işlem örneklendiği zaman, ne kadar sıklıkla söz konusu işlevin çağrı yığının en üstünde olduğunun sayısını sağlar.

Örnekleme yöntemini kullanarak bir uygulamanın proflini oluşturma

  1. Yönetici ayrıcalıkları ile Visual Studio 'ı açın.Yönetici olarak çalıştırma profil oluşturma için gereklidir.

  2. PeopleTrax çözümünü açın.

    PeopleTrax çözümü şimdi Çözüm Gezginini doldurur.

  3. Proje yapılandırma ayarını Yayın 'a ayarlayın.

    Uygulamanızdaki performans sorunlarını algılamak için bir yayın yapısı kullanmanız gerekir.Sürüm oluşturma bir hata ayıklama yapısı performansını olumsuz yönde etkileyebilecek ve performans sorunları doğru olarak göstermeyen derlenmiş ek bilgiler içerdiği için yayın yapısı profil oluşturma için tavsiye edilir.

  4. Bu Analiz menüsünde, Performans Sihirbazını Başlat 'ı tıklayınız.

    Performans Sihirbazı görünür.

  5. Burada Cpu Örnekleme (önerilen) seçili olduğuna emin olun ve İleri 'ye tıklayın.

  6. Burada Hangi uygulamayı profil oluşturma için seçmek istersiniz, PeopleTrax'ı seçin ve sonra İleri 'ye tıklayınız.

    Visual Studio projeyi oluşturur ve uygulamanın profilini oluşturmayı başlatır.Bu PeopleTrax uygulama penceresi görünür.

  7. Burada İnsanları Getir 'e tıklayınız.

  8. Burada Dışarı aktarData'yı tıklatın.

    Not Defteri açılır ve PeopleTrax 'dan dışa aktarılan verileri içeren yeni bir dosya görüntüler.

  9. Not Defteri'ni kapatın ve sonra PeopleTrax uygulamasını kapatın.

    Profil oluşturucu profil oluşturma veri (*.vsp) dosyası oluşturur, Performans Gezgini penceresindeki Raporlar kısmında dosya adını listeler ve otomatik olarak Visual Studio 'ın ana penceresindeki veri dosyasının Özet görünümünü yükler.

Örneklenen profil oluşurma sonuçlarını analiz etmek

  1. Özet görünümü profil oluşturmayı çalıştırma yolu boyunca Cpu kullanımı çizelgesini görüntüler, uygulamanın en aktif olan arama ağacının bölümlerini gösteren Sıcak Yol listesi ve kendi işlev gövdesinde kod yürütürken en yoğun şekilde örneklenen işlevleri gösteren En Bireysel İş Yapan İşlevler 'in listesi.

    Bu Sıcak Yol listesini inceleyin ve listenin sonuna yakın PeopleTrax işlevinin PeopleNS.People.GetNames yöntemi olduğuna dikkat edin.Konumu analiz için onu iyi bir aday yapar.Bu İşlev Ayrıntıları görünümünde İsimleriAl'ın detaylarını görüntülemek için işlev ismine tıklayınız.

  2. Bu İşlev Ayrıntıları görünümü iki pencere içerir.Maliyet dağıtımı penceresi işlev tarafından gerçekleştirilen çalışmanın, kendisinin çağırdığı işlevler tarafından gerçekleştirilen çalışmanın ve örneklenmiş örneklerin sayısı için işlev çağıran işlevelerin katkısının grafiksel bir görünümünü sağlar.Bir işlev adını tıklatarak görünümün odağı olan işlevi değiştirebilirsiniz.Örneğin, seçili işlevi İnsanlarıAl yapmak için PeopleNS.People.GetPeople'ı tıklatın.

    Bu İşlev Kodu Görünümü penceresi eğer işlev kullanılabilir ise işlev için kaynak kodunu gösterir ve seçili işlevde en pahalı satırları vurgular.GetNames seçili olduğunda, bu işlev uygulama kaynaklarından bir dizeyi okuduğunu ve sonra dizedeki her satıra bir ArrayList eklemek için bir StringReader kullandığını görebilirsiniz.Bu işlevi en iyi şekilde belirlemenin kesin bir yolu yoktur.

  3. PeopleNS.People.GetPeople GetNames için tek arayıcı olduğundan, maliyet dağıtımı penceresi içinde kendi kodunu incelemek için GetPeople'a tıklatın.Bu yöntem bir GetNames tarafından üretilen kişilerin ve şirketlerin adlarından PersonInformationNS.PersonInformation nesnesinin bir ArrayList 'i döndürür.Ancak, GetNames PersonInformation nesnesini oluşturulduğu her zaman iki kez çağırılır.Yöntemin listeleri yalnızca bir kez yönteminin başında oluşturarak ve PersonInformation oluşturma döngüsü sırasında bu listelere dizin oluşturarak kolayca optimize edilebilecek olduğunu görebilirsiniz.

  4. GetPeople'a alternatif bir sürüm örnek uygulama kodu ile sağlanır ve oluşturma özelliklerine koşullu derleme sembolü ekleyerek en iyi duruma getirilmiş işlevi çağırabilirsiniz.Çözüm Gezgini penceresinde, Kişiler projesine sağ tıklatıp ardından Özellikleri tıklatın.Özellik sayfa menüsünde Oluştur 'a tıklatın ve ardından Koşullu derleme simge metin kutusunda OPTIMIZED_GETPEOPLE yazın.GetPeople en iyi duruma getirilmiş sürümü bir sonraki yapı özgün yönteminde yerini alır.

  5. Performans oturumunu yeniden çalıştırın.Performans Gezgini araç çubuğunda Profil Oluşturma ile Aç 'ı tıklatın.Önce İnsanları Al 'ı ve ardından Verileri Dışa Aktar 'ı tıklatın.Ortaya çıkan Not Defterini kapatın ve sonra People Trax uygulamasını kapatın.

    Yeni bir profil oluşturma veri dosyası oluşturulur ve yeni veri için bir Özet görünümü Visual Studio ana penceresinde görünür.

  6. İki profil oluşturma çalışmasını karşılaştırmak için, Performans Gezgini'nde iki veri dosyasını seçin, dosyaları sağ tıklatın ve sonra Performans Raporlarını Karşılaştır 'a tıklayınız.Bu Visual Studio ana penceresinde bir Karşılaştırma Raporu penceresi görünür.Bu Delta sütunu önceki Temel değerinden sonraki Karşılaştırma değerine işlevin performans değeri değişikliği gösterir.Değerleri karşılaştırmak için aşağı doğru açılan Sütun listesini seçebilirsiniz.Bu Kapsamlı Örnekler % 'i seçin.

    GetPeople ve GetNames yöntemlerinin önemli ölçüde performans artışı gösterdiğine dikkat edin.

Araçları Yöntemi Kullanarak profil oluşturma

Araçlandırma profil oluşturucunun profili oluşturulmuş ikili dosyaların özel oluşturulmuş sürümlerine araştırma işlevleri yerleştirdiği bir profil oluşturma yöntemidir.Araştırmalar araçlı modüllerde işlevlerin giriş ve çıkışta ve bu işlevlerde tüm çağrı sitesinde işlevlerin zamanlama bilgilerini toplar.Araç yöntemi diske yazma ve ağ üzerinden iletişim kurma gibi giriş/çıkış işlemleri ile ilgili konuları araştırma için yararlıdır.Araçlama örneklemeden daha ayrıntılı bilgi sağlar, ancak işlem yürütme daha kullanışsız ve büyük miktarda bir ek yüke sebep olur.Araçlı ikilileri hata ayıklama veya yayın ikililerinden daha büyük de olabilir ve dağıtım için amaçlanmamıştır.

Bu izlenecek yolda, daha önce profil oluşturduğumuz PeopleTrax uygulamasında en iyi duruma getrebileceğimiz daha fazla kodu keşfetmek için araç yöntemini kullacağız.Özet görünümü Zaman Çizelgesi filtresini kullanarak, bir Not Defteri dosyasında kişi listelerinin yazılı olduğu profilli uygulamamızda dışa aktarım veri senaryosundaki analizimize odaklanacağız.

Araçlama yöntemini kullanarak varolan bir uygulamanın profilini oluşturma

  1. Gerekirse, PeopleTrax uygulamasını Visual Studio'da açın.

    Yönetici olarak çalıştırdığınızdan ve çözüm için yapı yapılandırmasının Yayın 'a ayarlı olduğundan emin olun.

  2. Performans Gezgini'nde, Araçlama 'yı tıklatın.

  3. Performans Gezgini araç çubuğunda, Profil Oluşturma ile Açma 'ya tıklayın.

    Profil oluşturucu projeyi oluşturulur ve uygulamanın profilini oluşturmayı başlatır.Bu PeopleTrax uygulama penceresi görünür.

  4. Burada İnsanları Getir 'e tıklayınız.

    PeopleTrax veri kılavuzu verilerle doldurur.

  5. Yaklaşık 10 saniye bekleyin ve ardından Verileri Dışa Aktar 'a tıklayın.

    Not Defteri başlar ve PeopleTrax'dan gelen kişilerin listesini içeren yeni bir dosya görüntülenir.Beklemek filtreleme için veri dışa aktarım prosedürünü daha kolay tanımlamanızı sağlar.

  6. Not Defteri'ni kapatın ve sonra PeopleTrax uygulamasını kapatın.

    Visual Studio performans oturum raporu (*.vsp) oluşturur.

Araçlı profil oluşturma sonuçlarını analiz etmek

  1. Raporun Özet görünümünün zaman çizelgesi grafiği profil oluşturma çalışması süresince programın Cpu kullanımını gösterir.Dışa aktarım veri işlemi grafiğin sağ tarafında büyük tepe ya da plato olmalıdır.Sadece dışa aktarım işleminde toplanan veriyi görüntülemek ve analiz etmek için performans oturumunu filtreleyebiliriz.Grafikteki veri verme işlemi başladığı noktanın soluna tıklatın.Operasyonun sağ tarafına yeniden tıklatın.Sonrasında zaman çizelgesinin sağ tarafındaki bağlantı listesinde Seçime Göre Süz 'ü tıklatın.

    Bu En Sık Kullanılan Yol ağacı PeopleTrax.Form1.ExportData yöntemi tarafından çağrılan Concat yöntemi zamanının büyük bir yüzdesini tüketir.Bu System.String.Concat aynı zamanda En Bireysel Çalışmalı İşlevler listesinde en üstte yer aldığı için, işlevde harcanan zamanı azaltmak muhtemel bir en iyileme noktasıdır.

  2. Herhangi bir özet tabloda İşlev Detayları görünümünde daha fazla bilgi için System.String.Concat 'a çift tıklatın.

  3. PeopleTrax.Form1.ExportData'nın Concat çağıran tek yöntem olduğunu görebilirsiniz.Yöntemi İşlev Ayrıntıları görünümü hedefi olarak seçmek için İşlev Arama listesindeki PeopleTrax.Form1.ExportData 'yı tıklatın.

  4. İşlev Kodu Görünümü penceresinde yöntemi inceleyin.Burada System.String.Concat 'a harflerden oluşan hiçbir çağrı olmadığını fark edin.Bunun yerine, derleyicinin aramaları System.String.Concat ile değiştirdiği += işlemcinin birçok kullanımı vardır..NET Framework'de bir dizede herhangi bir değişiklik yeni bir dize ayrılmasına sebep olur..NET Framework dize birleştirme için en iyileştiren bir StringBuilder sınıfı içerir.

  5. En iyi duruma getirilmiş kod ile bu sorun alanını değiştirmek için, PeopleTrax projesine koşullu derleme sembolü olarak OPTIMIZED_EXPORTDATA ekleyin.

  6. Çözüm Gezgini'nde PeopleTrax'a sağ tıklayın ve sonra Özellikler 'i seçin.

    PeopleTrax proje özellikleri formu görüntülenir.

  7. Yapı sekmesini tıklatın.

  8. Bu Koşullu Derleme Simgeleri metin kutusunda, OPTIMIZED_EXPORTDATA yazın.

  9. Proje özellik formunu kapatın ve sizden istendiğinde Tümünü Kaydet 'i seçin.

Uygulamayı yeniden çalıştırdığınızda, işaretli performans iyileştirmeleri görürsünüz.Gözle görünür performans geliştirmeleri olsa bile profil oluşturma oturumunu yeniden çalıştırmanız önerilir.Bir sorunu giderdikten sonra verileri gözden geçirmek önemlidir çünkü ilk sorun başka diğer sorunları gizlemiş olabilir.

Ayrıca bkz.

Başvuru

/ Z7, /Zi, /ZI (hata ayıklama bilgileri biçimi)

Kavramlar

Profil oluşturma araçları ile çalışmaya başlama

Diğer Kaynaklar

Genel bilgiler (profil oluşturma araçları)