Birkaç hesaplamalı CPU çalışması yapan bir uygulamaya sahibim, ancak çoğunlukla bellek erişimleri (nesneleri ayırma ve bunları taşıma, birkaç sayısal veya aritmetik kod var).Uygulamanın işlemci mi yoksa bellek mi bağlı olduğunu nasıl kontrol edebilirim?
CPU boşta kaldığında bellek erişim gecikmelerinde (önbellek kayıplarından dolayı) harcadığım sürenin payını nasıl ölçebilirim?
Uygulamanın bir Hyper-V konuğu üzerinde çalıştığını not etmeliyim; Herhangi bir güçlük çekeceğinden emin değilim, ama olabilir.
Gördüğünüz gibi, uygulamayı zaten belirledim. Memset, memmove vb. Gibi çeşitli bellek erişimli fonksiyonlar tarafından alınan zamanın büyük bir kısmıyla oldukça düz bir performans profiline sahiptir (aslında bu, Windows üzerinde çalışan bir .NET uygulamasıdır ve bu işlevler, nesne yapımı sırasında CLR tarafından çağrılır). Zamanlarının CPU ya da bellek veri yolu tarafından baskın olup olmadığını bilmek isterim. – jkff
** AMD CodeAnalyst Performance Analyzer ** 'ı deneyebilirsiniz: http://developer.amd.com/cpu/codeanalyst/Pages/default.aspx veya http://www.virtualdub.org/blog/pivot/entry.php ? id = 288 –