İçeriğe geç
PS5PCEM
KısmiGrafik

Skaler shader çağrıları

S_SWAPPC_B64 ve S_CALL_B64 tam bir dönüş adresi kaydeder ve ENDPGM'den sonra duran bir çağrılan dahil sınırlı bir yerel alt yordam çalıştırır. Doğrulanmış bir AGC getirme shader'ı da aynı şekilde bağlanabilir.

10 Ekim 2026 tarihine kadarki depo notları

Çağrı ve dönüş

SOP1 işlem kodu 0x21, S_SWAPPC_B64'tür. SOPK işlem kodu 0x16, hedefi PC + 4 + sign_extend(SIMM16) * 4 olan S_CALL_B64'tür; geriye doğru çağrılar da buna dahildir. İkisi de sonraki komutun adresini hedef SGPR çiftine yazar. Eşleşen bir S_SETPC_B64 oraya döner. CALL, SCC ve EXEC'e dokunmaz.

Hedefi null olan bir SWAPPC, mevcut S_SETPC_B64 devamı olarak kalır. Yerel SWAPPC hedefleri bir GETPC ile tam genişlikte anlık bir toplama veya çıkarmadan çözülebilir. Komut bağlantı yazmacını da yazsa hedef yakalanır. ENDPGM'den sonra yaşayan bir çağrılan, ayırma ve komut sınırları içinde eşleşen dönüşüne kadar çözülür. Sıradan bir donanım devamı yine de sondaki meta veriden önce durur.

Çağrı nasıl dönüştürülür

Denetim akışı grafiği açık çağrı ve dönüş kenarları kazanır. Çağrılan, çağıranın yazmaç durumunu paylaşır ve sınırlı SPIR-V dağıtıcısını kullanır. Desteklenmeyen bir çağrı doğrusal denetim akışı yoluna düşemez. Ana sistem kaynak keşfi çağrıları ve dönüşleri izler; böylece çağrılanın içinde başlatılan bir tanımlayıcı yine görünür.

Desteklenen her çağrı, s0:s1'den s104:s105'e kadar ayrı, çift hizalı bir SGPR çiftine ve tam olarak bir eşleşen dönüşe sahiptir. Çağrılanlar, denetleyicinin izin verdiği biçimlerde iç içe veya ardışıktır. Hedefin rastgele bir çalışma zamanı değeri olduğu genel dinamik hedefler desteklenmiyor olarak kalır.

Getirme shader'ları ve yoklama

Çağrının değişmemiş kullanıcı verisi çifti AGC'nin kaydettiği adresle eşleştiğinde harici bir getirme shader'ı bağlanır. Getirme gövdesi dönen SETPC'sine kadar çözülür ve o SETPC çağıranın bağlantı çiftini okumalıdır. Analiz önbelleği sıradan bir programı getirme gövdesinden ayırır; böylece daha eski bir getirme eklemesi yerel bir alt yordamın dönüşünün üzerine yazamaz.

42 dispatch'lik bir GPU yoklaması 21.504 sözcüğü denetler. 9 Ekim raporu yalnızca çağrılardan yeni bir oyun aşaması veya yeni bir kare hızı iddia etmez.

Uygulananlar

  • Tam dönüş adresi ve eşleşen bir S_SETPC_B64 ile S_SWAPPC_B64 ve S_CALL_B64.
  • Mevcut sınırlar içinde iç içe çağrılanlar ve ENDPGM'den sonra yerleşen çağrılanlar.
  • Dönüşü çağıranın bağlantısını okuyan doğrulanmış bir AGC getirme shader'ının bağlanması.
  • 21.504 sözcüğü kapsayan 42 dispatch'lik bir yoklama.

Hâlâ eksik olanlar

  • Genel dinamik çağrı hedefleri desteklenmiyor.
  • Bir çağrının çift hizalı bir bağlantı çiftine ve tek bir eşleşen dönüşe ihtiyacı var.
  • Yoklama bir saniyedeki kare sonucu değildir.

İlgili mekanizmalar

Bu sayfalar nedir

Metin, PS5PCEM deposundaki mimari notları ve Ekim 2026 raporlarını izler. Odaklı bir testin geçmesi yeni bir kare hızı veya oyunun yeniden bitirilmesi anlamına gelmez.

Tüm teknolojiler