Bellek Profili Aracı

Hızlandırıcılarınızın zaman içindeki bellek kullanımını görselleştirmek için Bellek Profili'ni kullanabilirsiniz.

Desteklenen Platformlar

TPU: Desteklenir

GPU: Desteklenir

Bellek Profili Aracı'nı kullanma

Bellek Profili aşağıdaki bileşenleri içerir:

  • Sayfanın üst kısmındaki Bellek Kimliği seçici, profil oluşturulan ana makineye bağlı olabilecek farklı hızlandırıcılardan birine veya belirli durumlarda ana makine belleğine bağlı yüksek bant genişlikli belleğe (HBM) odaklanmanızı sağlar.
  • "Bellek Zaman Çizelgesi Grafiği" ve "Bellek Profili Özeti", bellek ayırma, bellek ayırma ve profil oluşturma oturumu sırasındaki kullanımla ilgili üst düzey bilgileri (yığın ve yığındaki dökümler ve parçalanmanın etkileri dahil) yakalar.
  • Bellek dökümü tablosunda, bellek kullanımına en fazla katkıda bulunan çerçeve düzeyindeki işlemler hakkında bilgi sağlanır. Derleyici tarafından XProf'a sağlanırsa şekil, veri türü vb. gibi işlem başına ek ayrıntılar da vardır. Tabloda, bellek dışı (OOM) durumlarında hata ayıklama işlemine yardımcı olmak için profilleme penceresindeki en yüksek kullanım noktasında bu ayrıntılar gösterilmektedir.
  • Ayırma ve ayırma işlemleri, tüm HBM bellek alanının sahibi olan XLA'nın çalışma zamanı ayırıcısı tarafından yönetilir (ve profile eklenir).
  • Bellek Profili'nin genellikle GPU profilleme için TPU iş yüklerine kıyasla daha ilgi çekici ve değerli olduğunu unutmayın. TPU yürütme modeli, genellikle model eğitimi veya çıkarım sırasında değil, XLA derleyicisi tarafından büyük bir ön tahsis içerir. Bu nedenle, genellikle ayırma grafiğinin düz bir yatay çizgi gibi göründüğünü görürsünüz. Ayrılmaların tümü, büyük olasılıkla profilin en başında gerçekleşmiştir (profil oluşturucu, çalışmanın o noktasında etkinse). Bu da ayırmaların görülmesini zorlaştırır.
  • Bellek profili özetindeki ve bellek zaman çizelgesi grafiğindeki (yüzde olarak) parçalanma metriği, bellek parçalanma sorunlarını belirlemenize yardımcı olur. Yüksek parçalanma değeri, toplamda yeterli boş bellek olsa da bunun birbirine bitişik olmadığını ve bu nedenle büyük bir ayırma isteğinin başarısız olabileceğini gösterir.

Bu araç ile Bellek Görüntüleyici aracı arasındaki bazı önemli farklar:

  • Bellek Görüntüleyici tamamen statiktir ve program sırasına odaklanır. Bellek Profili, profil oluşturma aralığı boyunca zaman içinde dinamik bir görünüm sağlar.
  • Bellek Görüntüleyici, bellek tahsislerini XLA modülü başına görselleştirir. Bellek Profili ise birden fazla XLA modülünden oluşan iş yükleri için belleğin genel görünümünü sağlar.