Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu senaryo kılavuzunda, veri toplamak için Performans İzleyicisi nasıl kullanılacağı ve bilgisayarın yavaş olmasını sağlayan performans sorununu daraltmak için verilerin nasıl kullanılacağı açıklanmaktadır. Genel yaklaşımlar tanıtır ve sorun giderme kavramlarını açıklamaya çalışır.
Performans verilerini kaydetmek için Performans İzleyicisi kullanma
Windows'un tüm tam sürümleri Performans İzleyicisi adlı bir gelen kutusu aracıyla birlikte gelir. Merkezi işlem birimi (CPU) kullanımı veya bellek kullanımı hakkında daha fazla bilgi sağlayan Windows'ta yerleşik performans sayaçlarını kullanarak Windows sisteminin çeşitli yönleriyle ilgili performansla ilgili bilgileri izlemek için bu aracı kullanabilirsiniz.
Her sayaç aynı basit şekilde oluşturulur:
[Performance counter object]\<Instance>\<Counter Name>
Örneğin:
[Processor Information]\<CPU 0\>\% Processor Time
Sayaçlar tarafından sağlanan performans verilerini depolamak için veri toplayıcı kümelerini Performans İzleyicisi kullanabilirsiniz. Aşağıdaki ekran görüntüsüne bakın:
Bu Veri Toplayıcı Kümelerini oluşturmak için grafik kullanıcı arabirimlerini (GUI) veya logman.exe
komutunu kullanabilirsiniz.
Veri toplayıcı kümesi oluşturmak için yükseltilmiş bir komut istemi penceresinde aşağıdaki komutu çalıştırın:
logman.exe create counter PerfLog-15Sec-Contoso -o "c:\perflogs\Contoso_PerfLog-15sec.blg" -f bincirc -v mmddhhmm -max 800 -c "Hyper-V Dynamic Memory Balancer (*)\*" "Hyper-V Hypervisor Virtual Processor(*)\*" "Hyper-V Hypervisor Logical Processor(*)\*" "\LogicalDisk(*)\*" "\Memory\*" "\Cache\*" "\Network Interface(*)\*" "\Paging File(*)\*" "\PhysicalDisk(*)\*" "\Processor(*)\*" "\Processor Information(*)\*" "\Processor Performance(*)\*" "\Process(*)\*" "\Process V2(*)\*" "\Redirector\*" "\Server\*" "\System\*" "\Server Work Queues(*)\*" "\Terminal Services\*" -si 00:00:15
Sayacı başlatmak için yükseltilmiş bir komut istemi penceresinde aşağıdaki komutu çalıştırın:
logman.exe start PerfLog-15Sec-Contoso
Bu komut sisteminizde "uçuş kutusu kaydedicisi" benzeri bir monitör oluşturur. İzleyici her 15 saniyede bir performans verilerini günlüğe kaydeder (aralık için bkz -si 00:00:15
. ). Toplayıcı kümesi her başlatıldığında sistem üzerindeki etki %1'den az olmalıdır ve yerel sabit diskinizde 800 megabayttan (MB) fazla alan kullanmaz. Bilgisayarı yeniden başlatırsanız, monitörü yeniden başlatmak için komutunu çalıştırmanız gerekir.
Sayacı durdurmak için yükseltilmiş bir komut istemi penceresinde aşağıdaki komutu çalıştırın:
logman.exe stop PerfLog-15Sec-Contoso
Veri toplayıcı kümesi de ilkesini [Performance counter object]\<Instance>\<Counter Name>
izler. Bu nesnenin örneği olmadığından sayaç nesnesi "Bellek" olarak adlandırılır. Bunun nedeni, Windows'ta bir bellek olması, ancak birden fazla sabit disk veya CPU'ya sahip olmasıdır.
Artık her 15 saniyede bir verileri günlüğe kaydeden bir veri toplayıcı kümeniz var. Verileri analiz etmek için kullanılan aracın sınırlandırılması nedeniyle 15 saniye seçilir: Performans İzleyicisi.
Grafik içinde en fazla 1.000 veri noktası görüntülenebilir. Veri toplayıcı verileri her saniye günlüğe kaydedecek şekilde yapılandırılmışsa, grafik verileri yalnızca 16 dakika 40 saniye içinde görüntüleyebilir. Günlükte daha fazla veri varsa, bu veri noktalarını "özetleyip birleştirmeye" başlar. Yakalama, yüksek yoğunluklu yakalama olarak adlandırılır.
Bu, grafın doğru sayıları göstermemesine neden olabilir. Grafiğe bakarak ve En Düşük veya En Yüksek değerlerle karşılaştırarak bunu belirleyebilirsiniz.
Bu örnekte, sayaç nesnesi İşlemcisi için örnek _Total % Boşta Kalma Süresi sayacına bakın. En düşük değere bağlı olarak grafın mavi çizgiye (%32) isabet etmesi gerekir, ancak bu doğru değildir. Sayı ve grafik eşleşmediğinden, görüntülenen süre içinde kaç örnek olduğunu doğrulamanız gerekir (22 dakika ve 01 saniye). Üzerine gelindiğinde, bir "açılır öğe" bu veri noktasında kaç örnek olduğunu gösterir. Gördüğünüz gibi, 10 örnek vardır ve bu nedenle araç, bir saniyelik bir aralıkla yakalama olduğu için bunları özetleyip birleştirmeye zorlanır.
Windows'un basitleştirilmesi
Artık performans sayacı günlüğünüz olduğuna göre, Windows'un analizine yardımcı olacak şekilde basitleştirmeyi deneyelim. Bunu yapmak için sistemi mantıksal bileşenlerine ayırın: bellek, depolama, CPU ve ağ.
Bazı performans izleyicisi nesnelerini fiziksel kaynağa eşlemeye ek olarak, Windows'un iki ana alana ayrıldığını unutmayın: Çekirdek ve Kullanıcı modu.
Çekirdek , işletim sistemi (işletim sistemi) ve sürücüleri (virüsten koruma filtresi sürücünüzü de içerir) ifade eder. Çekirdek, Windows'ta her zaman işlem kimliğine 4
sahip olan Sistem İşlemi adlı mantıksal bir yapıyla temsil edilir. Güvenlik nedeniyle bu alan güçlü bir şekilde korunmaktadır. Performans İzleyicisi gibi gelen kutusu araçlarıyla bile, bu araçtan yalnızca küçük bir bilgi elde edilebilir. Örneğin, ne kadar sayfalanmamış havuzun kullanımda olduğunu görebilirsiniz, ancak kimin kullandığı hakkında bilgi yoktur.
Kullanıcı modu, tüm uygulamaların (modern Appx, hizmetler ve yürütülebilir dosyalar) çalıştığı yerdir. Performans İzleyicisi ile her işlem hakkında bilgi edinebilirsiniz.
En önemli 18 sayacın tanıtımı
Basitleştirmek için aşağıdaki bölümlerde en önemli 18 sayaç ve bunların eşikleri ilişkili oldukları fiziksel kaynaklara göre ayrılmıştır.
Depolama
Birincil sayaçlar | Sağlam | Uyarı | Kritik |
---|---|---|---|
\LogicalDisk(*)\Ort. Disk sn/Okuma | < 15 ms | > 25 ms | > 50 ms |
\LogicalDisk(*)\Ort. Disk sn/Yazma | < 15 ms | > 25 ms | > 50 ms |
\PhysicalDisk(*)\Ort. Disk sn/Okuma | < 15 ms | > 25 ms | > 50 ms |
\PhysicalDisk(*)\Ort. Disk sn/Yazma | < 15 ms | > 25 ms | > 50 ms |
Not
Kısa ani artışlar tolere edilebilir. Daha uzun gecikme sürelerini (bir dakika veya daha uzun) araştırmanız gerekir.
Bu sayaçlar gecikme süresini temsil eder. Gecikme süresi, bilgileri almak için harcadığı süreye göre tanımlanır. Disk performansı açısından, kuruluma daha yakından bakmanız gerekir. Normal bir sabit disk için, katı hal sabit sürücüsü (SSD) yerine disk normalde dakikada 5.400 devir (RPM) döndürme hızına sahiptir. Bu, diskin mili (bilgilerin blok olarak depolandığı yer) dakikada 5.400 kez döndürdüğü anlamına gelir. Diskten herhangi bir bloğu okumak için gereken süreyi hesaplayabilmeniz gerekir:
Bir blok / (RPM / 60) = bir blok için gecikme süresi
Bir blok / 5400 RPM / 60 = 0,011111 sn = 11 ms
Bu nedenle, teoride, disk 11 ms içindeki herhangi bir bloğu okuyabilmelidir. gecikme ~100 ms
süresi varsa, disk bloğu en az sekiz kez okuyabilmelidir, bu nedenle neden bir gecikme var? Disk bunalmış durumda mı, kullanıyorsa kim kullanıyor?
Bunu kimlerin kullandığını belirlemek için artık İşlem sayacı nesnesini de kontrol edebilirsiniz.
Disk işlemleriyle ilgili işlem sayaçları:
- \İşlem(*)\GÇ Okuma İşlemleri/sn (işleme özgü disk okuma süreleri)
- \İşlem(*)\GÇ Yazma İşlemleri/sn (işleme özgü disk yazma süreleri)
Bu sayaçları kullanabilir ve gecikme süresini veya disk kullanımını işlem kullanımıyla ilişkilendirmeyi deneyebilirsiniz.
Bir sonraki fiziksel bileşene geçelim.
Bellek
Sanal bellek ve fiziksel bellek sayaçları | Sağlam | Uyarı | Kritik |
---|---|---|---|
\Memory\Pool Paged Bytes | Pool Nonpaged Bytes | 0–50% | 60–80% | 80–100% |
\Memory\Available MBytes | > %10 veya en az 4 gigabayt (GB) ücretsiz | < 10% | < %1 veya 500 MB'tan az |
\Memory\% Kullanılan Kaydedilmiş Bayt sayısı | 0–50% | 60–80% | 80–100% |
Bu bölümde aşağıdaki sayaçlar açıklanmaktadır:
- Havuz Disk Belleği Baytları
- Disk Belleği Olmayan Havuz Baytları
Bu sayaçlar, sistemin tamamı tarafından paylaşılan çekirdek kaynaklarını temsil eder. İşlemler disk belleğine alınmış ve disk belleği olmayan havuzlar talep etse de, bu çoğunlukla sürücüler tarafından gerçekleştirilir; bu nedenle veriler Performans İzleyicisi için görünür değildir. Disk belleğine alınan Havuz sayfa dosyasına çağrılana kadar, sayfalanmayan havuz olamaz. Bu çekirdek kaynaklarının sistemdeki bellek (rastgele erişim belleği (RAM)) boyutuna bağlı olduğunu unutmayın. Sayfalanmayan havuzun sınırı RAM'inizin %75'idir ve Bunlar Kullanılabilir MBayt'ınızı doğrudan etkiler. Kullanılabilir MBytes , çekirdek de dahil olmak üzere tüm programların kullanabileceği RAM miktarıdır.
İşleminizin RAM kullanımı üzerindeki etkisini anlamak için aşağıdaki sayacı kullanabilirsiniz:
İşlem sayacı | Yorum |
---|---|
\İşlem(*)\Çalışma Kümesi | RAM'inizin en üstteki tüketicisini belirlemek için Kullanılabilir MBytes ile ilişkilendirmeyi deneyin. Çalışma Kümesi , bir işlemin herhangi bir zamanda kullandığı RAM miktarı (sayfa dosyası değil) olarak tanımlanır. |
Bellek\% İşlendi Kullanımda Baytlarının Windows'ta sahip olduğunuz sanal belleği temsil ettiğini unutmayın. Bu, Bellek'i seçtikten sonra Performans sekmesindeki Görev Yöneticisi'nde görüntülenebilen sayfa dosyası ve RAM'in birleşimidir:
Bu sistemde 128 GB RAM ve 128 GB'lık bir sayfa dosyası olduğundan , Kaydedilmiş bellek 256 GB'tır. Disk belleği havuzuna ve Disk belleği olmayan havuz belleğine de göz atabilirsiniz.
Bellek sorunlarını araştırırken, her iki alanın da (Çekirdek ve Kullanıcı) aynı fiziksel kaynağı paylaştığını unutmayın. Bu nedenle, bilgisayarın belleği düşükse, bunu kimin kullandığını bulmaya çalışın.
Şimdi bir sonraki fiziksel kaynağa geçelim.
CPU
CPU performansı sorunlarını giderirken işletim sistemini yeniden Çekirdek ve Kullanıcı moduna bölmeniz gerekir. Ancak bölmeyi anlamak daha kolaydır. Kullanıcı modu, CPU döngülerini kullanan ve CPU dışında donanım içermeyen Kullanıcı modunda çalışan uygulamalar da dahil olmak üzere herhangi bir uygulama veya hizmet tarafından temsil edilir. Donanıma erişmeniz gerekiyorsa, aracın GPU, depolama veya ağa erişmek için sürücülerle konuşması gerektiğinden bu durum Çekirdek modunda sonuç alır.
Burada bazı örnekler verilmiştir:
- Hesaplama yapan SQL Server = Kullanıcı modu
- DISKe günlük dosyaları yazan SQL Server = Çekirdek modu
- Ağ paylaşımlarına erişen Dosya Sunucusu = Çekirdek modu
Ardından, birincil sayaçlara bakalım:
Birincil sayaçlar | Sağlam | Uyarı | Kritik |
---|---|---|---|
\İşlemci Bilgileri(*)\% Kullanıcı Süresi (Kullanıcı modu) | < 50% | 50–80% | > 80% |
\İşlemci Bilgileri(*)\% Privileged Time (Çekirdek modu) | < 30% | 30–50% | > 50% |
\İşlemci Bilgileri(*)\% Boşta Kalma Süresi | >20% | >10% | <10% |
Yine, kısa ani artışlar kabul edilebilir, ancak bir dakikadan fazla görürseniz araştırmaya başlayın.
Cpu her kullanıldığında, CPU % Kullanıcı Saati (Kullanıcı modu) veya Ayrıcalıklı Saat Yüzdesi (Çekirdek modu) kullanır. Yüksek CPU durumuyla (= düşük % Boşta Kalma Süresi) karşılaşırsanız, aşağıdaki ikincil sayaçlara bakarak bunu kimin kullandığını bulmanız gerekir:
İkincil sayaçlar | Yorum |
---|---|
\İşlem(*)\% Kullanıcı Zamanı | Birden fazla etkin işleminiz olabileceğini unutmayın. |
*\Process()\% Privileged Time** | Sistem işlemiyle ilgili yalnızca sınırlı bilgi olduğunu unutmayın. Sistem işlemi normalde Privileged Time % için en üstteki sürücüdür, ancak işlem bu mantıksal yapı içinde sürücüleri barındırıyor. Ancak bununla sınırlı değildir. |
% 100 İşlem\% Kullanıcı Süresi = bir CPU. 16 CPU'nuz varsa, bir işlemin ulaşabileceği maksimum kullanım %1600'dür. Aşağıdaki ekran görüntüsüne bakın:
Bu örnekte, CPU kullanımının benzetimini yapmak için bir araç kullandınız (Kullanıcı Süresi% ). Aracı yalnızca dört CPU üzerinde (CPU 12, 13, 14 ve 15) çalışacak şekilde sınırlandırmışsınız. Dört iş parçacığı etkin olduğunda, uygulamanın kendisi (CPU Stresi) %400'e ulaşırken tüm CPU'ların %100'e nasıl ulaştığı netleşir. Bu örnek, CPU Stresi'nin CPU kullanımı ile uygulamanın sınırlı olduğu CPU üzerindeki CPU yükü arasındaki ilişkiyi gösterir. Bu tür bir ilişki kurmak, temel alınan işlemlerin tam olarak anlaşılmasına yardımcı olur.
Bu bizi son fiziksel nesneye götürür.
Ağ
Performans İzleyicisi yerel bir araç olduğundan, ağdan yalnızca temel bilgileri alabilirsiniz. Bununla birlikte, aşağıdaki sayaçlar hala yararlıdır:
Birincil sayaçlar | Sağlam | Uyarı | Kritik |
---|---|---|---|
\Ağ Arabirimi(*)\Toplam Bayt/sn | < 50% | 50–80% | > 80% |
\Ağ Arabirimi(*)\Gönderilen Bayt/sn | * | * | * |
\Ağ Arabirimi(*)\Alınan Bayt/sn | * | * | * |
Not
Yıldız simgeleri (*) ile işaretlenmiş hücreler için daha fazla bilgi: \Ağ Arabirimi(*)\Gönderilen Bayt/sn ve \Ağ Arabirimi(*)\Alınan Bayt/sn iş yükü sunucunun rolüne bağlı olmalıdır. Örneğin, saniye başına gönderilen bayt sayısı genellikle akış sunucusunda saniye başına alınan bayt sayısından daha yüksektir. Buna karşılık, bir yedekleme yapan Backup-Server'da saniye başına alınan bayt sayısı genellikle saniye başına gönderilen bayt sayısından daha yüksektir.
Değerler ağ kartının hızıyla ilgilidir ve hesaplamayı yapmanız gerekir. Bunu yaparken ağ hızının bit cinsinden ve 8 bit = 1 bayt olarak ölçüldüğünü unutmayın. Bu nedenle, 1 GB ağ kartınız varsa aktarım hızınız 125 MB/sn'ye ulaşabilir.
Toplam Bayt/sn sayacı ağ kartınızın genel kullanımını anlamanıza yardımcı olsa da, diğer iki sayaç daha fazla veri alıp almadığınızı veya gönderdiğinizi anlamanıza yardımcı olabilir. Bu bilgilere sahipseniz, beklenen davranışla karşılaştırabilirsiniz. Ağınızı araştırmak istiyorsanız, ağ davranışını tam olarak anlamak için her iki taraftan uçtan uca izlemeler gerektirdiğinden farklı bir araç takımı gerekir.
Sonuç
Bu senaryo kılavuzu, bir Windows sisteminin dökümü ve fiziksel bileşenleriyle sonuçlanmıştır. Fiziksel bileşenlerde bir performans sorunuyla karşılaştığınızda sisteminizde sorunlar vardır. Uygulamanız da etkilenir.
Bu senaryo kılavuzunun Performans İzleyicisi hakkında temel bilgiler edinmenize ve sisteminizi uçuş kaydedicisi gibi bir "kara kutu" yakalamaya nasıl hazırlayabileceğinizi öğrenmenize yardımcı olabileceğini umuyoruz. Verileri analiz etme konusunda daha fazla yardıma ihtiyacınız varsa destek bileti açarak bizimle iletişime geçebilirsiniz.