Köşe verilerinin bellek bant genişliği, oyununuzun GPU performansında olası bir performans sorunu olabilir. AGI sistem profilinde tepe noktası bellek bant genişliği sorunlarını teşhis etmeye yardımcı olabilecek bazı sayaçlar vardır.
Qualcomm Adreno sayaçları
Qualcomm Adreno GPU'lara sahip cihazlarda önemli sayaçlardan bazıları şunlardır:
Karşı Teklif | Açıklama |
---|---|
Vertex Bellek Okuma | Harici bellekten okunan köşe verilerinin bant genişliği. |
Ortalama Bayt/Vertex | Köşe verilerinin ortalama boyutu (bayt cinsinden). |
Köşe Getirme Durağı Yüzdesi | GPU'nun tepe verilerinde engellendiği saat döngülerinin yüzdesi. |
ARM Mali sayaçları (WIP)
ARM Mali GPU'lara sahip cihazlarda önemli sayaçlardan bazıları şunlardır:
Karşı Teklif | Açıklama |
---|---|
Harici bellekten okuma ritimlerini yükle/depola | Yükleme/depolama birimi tarafından harici bellekten okunan veri atışları. Gölgelendirici çekirdekleri üzerinden ortalaması alınır. |
L2 önbellekten okuma ritimlerini yükle/depola | Yükleme/depolama birimi tarafından L2 önbelleğinden okunan veri atışları, gölgelendirici çekirdeklere göre ortalaması alınır. |
[Diğer] |
Ortalama okuma atışlarından gelen toplam bant genişliğini hesaplamak için sayaç değeri, veri yolu genişliği (genellikle 16 bayt) ve gölgelendirici çekirdeklerin toplam sayısıyla çarpılır. [Diğer]
Karşıt analizi
Bu sayaçların davranışını ölçmek için tek bir GPU çerçevesi boyunca ortalama ve en yüksek bant genişliğini ölçebilirsiniz. Bu, ardışık bir GPU Kullanımı bloğuyla tanımlanabilir.
![Tek bir kare için ortalama 327 MB/sn ve en yüksek değer 1, 16 GB/sn olan Vertex bellek okuma bant genişliği](https://developer.android.com/static/images/agi/vertex-memory-bw-images/sample_vert_bw.png?authuser=19&hl=tr)
En yüksek tepe tepe belleği okuma bant genişliğinin 1, 5 GB/sn'den yüksek olmaması ve ortalama bant genişliğinin 500 MB/sn'den yüksek olmaması önerilir. Daha yüksek değerler, birkaç yaygın sorundan birinin göstergesidir:
- Verteks boyutu çok büyük: Köşelerin büyük köşe özellikleri veya çok sayıda köşe noktası özelliği olabilir ve bu, köşe gölgelendirme süresini genel olarak etkiler.
- Vertex özellik akışları bölünmemiş: Vertex özellikleri, tek bir arabelleğe eklenmiş ve böylece önbellek verimliliği azalmış olacaktır.
- Kare başına çok fazla köşe gönderildi: Karmaşık modeller ve/veya çok sayıda model daha fazla bant genişliği kullanabilir ve gölgelendirme daha uzun sürebilir.
Köşe boyutu sorunları, 32 bayttan veya köşe noktasından büyük olmamasını önerdiğimiz Ortalama Bayt / Köşe yolu aracılığıyla da teşhis edilebilir.
![Ortalama 31, 3 bayt değerinde tek bir kare için ortalama köşe boyutu](https://developer.android.com/static/images/agi/vertex-memory-bw-images/sample_bytes_per_vert.png?authuser=19&hl=tr)
Bu sorunlardan hangisini yaşıyor olabileceğinizi teşhis etmenin en iyi yolu, köşe biçimlerini analiz etmek için bir çerçeve profili izi almaktır.