Takılmayı teşhis edenler önce ekran kartı kullanımına bakar

· Yazarı: Kasayı Açanlar

Oyun takılmalarında ilk bakılacak gösterge ekran kartı kullanımıdır: kart kendi tavanının belirgin biçimde altında gezinirken kare süreleri düzensiz sıçrıyorsa, kareyi yetiştiremeyen taraf büyük olasılıkla işlemci tarafıdır. Bu yüzden takılma şikayetinde sıra şudur: önce hangi tarafın yetişemediğini tespit et, sonra o tarafa yük bindiren ayarı değiştir. Teşhis yapılmadan kurcalanan her ayar, çözüm değil kumar olur.

Sandalyeyi yanıma çek. Tek ekran var, o yüzden oyunu kenarlıksız pencerede açıyorum ki ölçüm sırasında Alt+Tab yapmak grafiği bozmasın. Sağ tarafta Görev Yöneticisi'nin Performans sekmesi duruyor. Oyunu kalabalık bir çarşıda, her seferinde aynı köşede, aynı kamera açısıyla durduruyorum. Böylece baktığım şey rastgele bir an değil, tekrar edilebilir bir sahne oluyor. Takılma teşhisinde en çok işime yarayan alışkanlık bu: aynı yeri, aynı yükle, iki kez görmek.

İlk baktığım şey FPS sayacı değil. FPS bir ortalamadır ve tam da saklamak istediği şeyi saklar. Bir saniyede doksan kare üretip bunun yirmisini tek bir sıçramada kaybedersen sayaç hâlâ yüksek bir sayı gösterir; sen ise ekranda bir kopma görürsün. Onun yerine kare süresine bakıyorum, yani kareler arasındaki milisaniye aralığına. Düz bir çizgi akıcılıktır. Testere dişi, takılmadır. Sayaç ne derse desin, gözüne inandığın yer burasıdır.

Şimdi GPU grafiğine geçiyorum. Görev Yöneticisi'nde GPU sekmesi açıldığında varsayılan olarak en yoğun motoru gösterir; o yüzden grafiğin üstündeki motor adına tıklayıp "3D"yü seçiyorum. Oyunun kare üretiminden sorumlu olan motor bu. Kartın toplam kullanımına değil, 3D motoruna bakmak gerekiyor; video kodlama ya da kopyalama motoru yüksek görünüp seni yanlış yöne çekebilir.

Ekranda iki farklı resim görürsün ve bu iki resim iki farklı makale konusudur.

Birincisi: 3D motoru sürekli tavanına yakın seyrediyor, kare süresi çizgisi ise düz. Kart yetişiyor, hatta yetişmek için elinden geleni yapıyor. Burada sınır karttır. Çözüm ayarların GPU'ya binen kısmındadır: gölge kalitesi, yansıma, ekran alanı ortam gölgelemesi, doku kalitesi, çözünürlük. DLSS, FSR ya da XeSS gibi ölçekleme yöntemleri de burada işe yarar, çünkü kartın hesapladığı piksel sayısını azaltırlar.

İkincisi: 3D motoru tavanın altında geziyor, ara ara aşağı düşüyor, kare süresi testereye dönüyor. İşte bu, kartın boş beklediği andır. Kart kareyi çizmeye hazırdır ama eline kare gelmiyordur. Kareyi hazırlayan, sahneyi kuran, nesneleri kartın anlayacağı dile çeviren taraf işlemcidir. Kart boş bekliyorsa top işlemcide demektir.

Bu ayrımı neden bu kadar önemsiyorum, anlatayım. Çünkü insanlar en pahalı parçayı en çok suçlamaya meyilli. Halbuki takılmanın nerede yoğunlaştığı çoğu zaman tek başına yeterli ipucu veriyor. Aynı oyunun boş bir arazide akıcı, kalabalık meydanda zıplayan bir çizgiye dönüşmesi tesadüf değil. Kalabalık sahnede ne oluyor? Her NPC bir yapay zekâ döngüsü, her araç bir fizik hesabı, her dükkân tabelası bir çizim çağrısı. Oyun motoru bu işlerin tamamını sınırlı sayıda iş parçacığına böler. İşlemcide sekiz çekirdek varsa motor bunların hepsini eşit kullanmaz; çoğu zaman iki, üç, belki dört iş parçacığına yüklenir. Kalan çekirdekler boş boş otururken darboğaz tam olarak orada oluşur. Yani elindeki işlemcinin "yeterli olması" değil, o motorun kullandığı iş parçacıklarının yetişmesi meseledir.

Bunu gözle görmek için Görev Yöneticisi'nde CPU sekmesine geç, grafiğe sağ tıkla ve görünümü "Mantıksal işlemciler" yap. Karşına çekirdek çekirdek bir ızgara çıkar. Benim baktığım desen şu: birkaç kutu tavana yapışmış, geri kalanı rahat rahat geziyor. Bu desen, motorun az sayıda iş parçacığıyla çalıştığının resmidir. Toplam CPU yüzdesi ise bu tabloda en yanıltıcı sayıdır; sekiz çekirdeğin ikisi doluyken toplam yüzde çeyrek görünür ve sen "işlemcim rahat" diye düşünürsün. Oysa kareyi yetiştiren iki çekirdektir ve onlar doludur.

Buraya bir uyarı sıkıştırmam lazım, çünkü bu tuzağa ben de düştüm. Bellek hızı ve kanal yapısı işlemci tarafını besler. Tek kanal çalışan bir sistem, dışarıdan bakınca tam olarak işlemci darboğazı gibi görünür: kart boş bekler, kare süresi sıçrar, kalabalık sahnede çöküş büyür. Görev Yöneticisi'nde Bellek sekmesine geçip kullanılan yuva sayısına ve hıza bakmak bir dakikanı alır. İki yuva dolu ve hız makul görünüyorsa bu ihtimali ele; tek yuva görünüyorsa işlemciyi suçlamadan önce oraya bakmış ol.

Bir de tersini ayırt etmek gerekiyor: bazı sistemlerde her şey karttan ibarettir. Kare süresi düz, kart sürekli tepede ve sen yine de düşük FPS'ten şikâyetçisin. Burada takılma değil, düşük kare hızı vardır ve çözüm yeri GPU'ya yük bindiren ayarlardır. İki durumu karıştırırsan yanlış ayarı kurcalarsın; işlemci sınırındayken gölge kalitesini düşürmek sana neredeyse hiçbir şey kazandırmaz, çünkü gölge kartın işidir. Aynı şekilde grafik ayarlarını dibe çekip hâlâ aynı takılmayı yaşıyorsan, elinde ayarla çözülmeyecek bir sorun olduğunun kanıtını bulmuş olursun.

En temiz testlerden biri çözünürlüğü düşürmektir. Kare hızı belirgin biçimde artıyorsa yük karttaydı. Neredeyse hiç değişmiyorsa, kart zaten boş bekliyordu demektir; darboğaz işlemci tarafındadır. İkinci test: varsa kalabalık yoğunluğu, NPC sayısı ya da görüş mesafesi ayarını kıs. Kare süresi çizgisi düzeliyorsa sorun sahne simülasyonundaydı, yani yine işlemci tarafında. Bu iki testi üst üste yaptığında elinde bir harita olur: hangi ayar hangi tarafa biniyor, kendi sisteminde tek tek görürsün.

Resmî sistem gereksinimleri tablosuna da bu gözle bakmak gerekiyor. O tablolarda işlemci satırıyla ekran kartı satırı yan yana yazılır ama çoğu oyuncu sadece kart satırını okur. Yeni bir kart alıp işlemciyi eski bıraktığında, kart yeni olsa bile kareyi hazırlayan taraf eski kalır ve sen kartın gücünü hiç göremezsin. Gereksinim satırı iki bileşeni birlikte tarif eder; iki satırı ayrı ayrı okumak, sonra da kendi ikilini bu iki satıra ayrı ayrı sürtmek gerekir.

Yalancı şüphelileri de ayırmak lazım, yoksa her takılmayı işlemciye yazar çıkarsın. Aynı noktada her seferinde tekrarlayan takılma sahne kaynaklıdır. Oyunu ilk açtığında olup ikinci geçişte kaybolan takılma gölgelendirici derlemesidir. Yeni bir bölgeye girince birkaç saniye süren sıçramalar doku akışı, yani disk tarafıdır. Ekranın bir anda kararıp sürücünün kendini yeniden başlatması ise sürücü zaman aşımıdır ve bambaşka bir teşhis akışı gerektirir. Kare üretimi özelliğine güvenip taban kare süresi bozuksa da bu yöntem seni kurtarmaz; kare üretimi kötü bir kare zamanı çizgisini pürüzsüz göstermez, sadece arasına kare koyar.

En sonda şunu söyleyeyim. Bu işin aslı parça değiştirmek değil, hangi tarafın yetişemediğini bilmek. Kartın boş beklediğini gördüğün an, elinde bir suçlu değil bir yön olur: kalabalık sahneler, tek çekirdek yükü, bellek yapılandırması. Kartın tepede olduğu ama kare süresinin düz gittiği an ise gölgeyi, yansımayı, çözünürlüğü konuşman gerektiğini söyler. İki resmi birbirinden ayırabilen biri, foruma "neden takılıyor" diye yazmadan önce cevabın yarısını kendi ekranında bulmuş olur.

Kasayı Açanlar Kasayı Açanlar Bu ekip tarafından yazıldı

Kasayı Açanlar, bilgisayarını kendi elleriyle söküp takmayı alışkanlık haline getirmiş kişilerden oluşuyor. İkinci el parçalarla kasa toplamış, uyumsuz bir parça yüzünden hata mesajıyla uğraşmış ve oyunların resmi gereksinim satırlarını kâğıt üzerinde karşılaştırmayı öğrenmiş bir grup.

Ekibimizle tanışın