Exynos 9810 Galaxy S9'in Geliştirilmesi: Bölüm 2 - Snapdragon'la Yaklaşmak

Galaxy S9 ile ilgili incelememizden sonra, Galaxy S9810'in Exynos 9 değişkenlerinin hem performansı hem de pil ömrü hakkında pek çok tartışma yapıldı. Orijinal incelemede, telefonun kötü özelliklerine en olumsuz olarak atıfta bulunduğum platformla ilgili birkaç önemli sorun tespit etmiştim. İçinde gözden geçirmeyi takip eden ilk parça Web tarama testimizde batarya ömründen faydalanmış gibi görünen ve telefonun performans özelliklerini biraz değiştiren kernele birkaç küçük değişiklik yaptım.

Bu önceki makalede, telefonun performansını iyileştirmek ve pil ömrünü optimize etmeye çalışmak için yapılması gereken çok şey olduğunu kaydettim. Özellikle performans açısından bakıldığında, kullanıcı deneyiminden yararlanan olası değişiklikler açısından çok düşük asılı meyveler vardı.

Performansa Odaklanmak

Bu ikinci bölüm için, Galaxy S845'in Snapdragon 9 varyantı ile uyumlu ve mümkün olan en iyi performansı elde etmeye çalışıyorum ve aynı zamanda pil ömrünü de göz önünde bulundurdum.

Samsung Galaxy S9 (E9810)
Çekirdek Karşılaştırma ve Değişim
versiyonDeğişiklikler ve Notlar
Resmi YazılımSevk edilen- Stok kurulum ve davranış
- 3 MHz'de Tek Çekirdekli M2704
- 3 MHz'de Çift Çekirdekli M2314
- 3 MHz'de Dört Çekirdekli M1794
'CPU Sınırlı
Mod'
- Ayarlar'da isteğe bağlı Samsung tanımlı CPU Modu
- CPU 1469 MHz ile sınırlı
- Yarım hızda bellek kontrolörü
- Muhafazakar Zamanlayıcı
Özel Yapılandırma 1- 'As Shipped' Firmware ile başlayın
- Hotplugging mekanizmasını kaldır
- Herhangi bir yüklemede M3 frekansının 1794MHz'e kadar olan tepe limiti
Özel Yapılandırma 2
(Çekirdek kaynağı)
Küçük çekirdek frekansını 1950MHz'e yükseltin
- Büyük çekirdek minimum frekansını 962MHz'e yükseltin
- Ölçülen perf ve güce dayanan EAS maliyet tablolarını uyarlayın
4.9-eas-dev için zamanlayıcı yamaları birleştirme (Jan18'e kadar)
Backport PELT util_est ve kullan
16ms için Backport PELT çürüme oranı değişikliği
- Artık gerekli olmayan Samsung zamanlama modlarını adapte / devre dışı bırak
Ayarlama için küçük özel değişiklikler
Özel Yapılandırma 3Büyük çekirdekli frekansı 2314MHz ve ilgili ayarlara yükseltin

Başlangıç ​​noktası olarak, 1'te kaldığımız yerden devam ediyoruz. Bu değişiklik, 1.8GHz üzerindeki 3GHz üzerindeki tüm yükseltme frekanslarının MXNUMX çekirdeklerinde kaldırılması ve çevrimiçi çekirdek / hotplugging sürücüsünün devre dışı bırakılması olduğu için son derece basitti.

Orijinal incelemede, telefonun performansını olumsuz yönde etkilemek açısından belirlediğim en belirgin konu, cihazın frekansta ölçeklemenin yanı sıra ipliklerin büyük çekirdeğe geçirilmesi açısından oldukça yavaş olmasıdır. Tanımladığım orijinal değerler, büyük çekirdeklerin maksimum frekansına ulaşmak için sabit bir sürekli iş yükü için 410ms civarındaydı. Bu, Snapdragon 65 varyantının 845ms'ına büyük bir karşıtlıktı. Diğer tüm şeylerin bir kenara bırakılması, Exynos 9810'in etkileşimli performansını en çok sınırlandıran şeydi, bu yüzden doğal olarak öncelikle ve en başta düzeltmek istediğimiz şey.

EAS çevresinde planlama geçmişi

Birkaç yıl önce big.LITTLE'ın girişinden bu yana, ARM'nin en büyük hedefi, SoC satıcılarının çeşitli CPU'ların performans ve enerji özelliklerinin farkında olacak akıllı bir programlayıcı ile heterojen CPU'ları çalıştırmasıydı. Bu iyi bir hedef oldu ama oraya ulaşmak için yol benim için bir karışıklık kısa bir şey oldu. ARM'in yaklaşımı, Linux çekirdeğinde veya Linaro çalışma grubu çekirdeğinde çalışmayı denemekti. Ne yazık ki, yıllar geçtikçe ve enerji farkındalığı planlamasının (EAS) ticari cihazların nakliyesine geldiğinde bir gazabı ile sonuçlanacağı birçok hype geciktiriyor. Bence Qualcomm topu burada bile oynuyordu. 2015 kadar erken Snapdragon 810 için ve şirketin EAS ile ilgili sorunları çözmek için ne yapmaya çalıştığını kapsamlı bir şekilde ele aldık.

Heterojen CPU'lar arasında zamanlamayı mümkün kılan temel bir bileşen, programlayıcının yalnızca genel CPU kullanımını bilmek yerine, aktiviteyi ve bireysel görevlerin yükünü bilmesidir. Bireysel bir görevin yükünü biliyorsanız, o zaman hangi CPU çekirdeklerinin yerleştirileceği ile ilgili olarak zamanlama kararları verebilirsiniz. Bu, başlangıçta Linux çekirdeğindeki PELT mekanizması (Her bir varlık yükü takibi) ile uygulandı ve hem HMP hem de EAS programlamasında geçiş kararlarında kullanılan şeydi.


Exynos 9810 Kat Planı. Görüntü Kredisi TechInsights

Arm ve Linux topluluğunun uzun süredir devam eden bir hedefi, ayrı bir mekanizma olmak yerine, zamanlayıcıda CPU frekansı seçim mantığını entegre etmekti. Bu, ilk olarak, schedfreq adlı bir projede denendi ve şimdi tam olarak, programcı olarak adlandırılan yeni bir valiye entegre edildi. Yine burada bahsettiğimiz uygulama zaman ölçeği birkaç yıl sürerken, aynı zamanda birçok cihaz nesliyle sayısız çözümle birlikte gönderildiğini görüyoruz.

S.LSI'nin Exynos yonga setleri güvenli bir şekilde oynuyordu ve Exnyos 9810'e kadar şirket ayrı bir interaktif işlemci frekans regülatörü olan bir HMP zamanlayıcıya bağlı kalmayı seçti. Huawei Kirin yongaseti EAS ile birlikte geliyor, ancak P20 gibi son cihazlarla bile, şirket zamanlayıcı CPU frekans yöneticilerini ön plana çıkartıyor ve geleneksel bir etkileşime (çok iyi sonuçlarla) dönüyor. Bu arada Qualcomm, özel uygulamalarını geliştirdi ve PELT'e çok daha duyarlı olan WALT (Pencere destekli yük takibi) adlı bir başka yaklaşımı benimsedi. Snapdragon 835 ve 845'te bu, zamanlama ve CPU frekansı seçimi açısından en iyi performansı sağlayan temel mekanizmadır.

Orijinal Makale

İlgili Mesaj

Yanıt Ver

Bu site spam'i azaltmak için Akismet'i kullanıyor. Yorum verilerinizin nasıl işlendiğini öğrenin.