Subcore adalah daemon root yang memanfaatkan berbagai sensor di perangkat untuk secara sistematis menerapkan profil penggunaan yang berbeda. Tujuannya adalah untuk mencapai keseimbangan berdasarkan beban kerja pengguna, daripada mengandalkan gubernur CPU untuk membuat asumsi bias tentang beban kerja saat ini.
Subcor membaca dan menulis ke banyak file kernel untuk menentukan profil mana Perangkat masuk. Antarmuka ini meliputi:
• Beban CPU aktif
• Tersedia core CPU
• Tersedia Gubernur CPU
• Tersedia frekuensi CPU
• Tersedia Beban GPU
• Frekuensi GPU yang tersedia
• Kapasitas baterai saat ini
• keadaan baterai (pengisian / pemakaian)
• Status layar
◦ Notifier negara (pilihan utama)
◦ Power suspend (pilihan sekunder)
◦ Antarmuka FrameBuffer ( Pilihan tersier)
• Memori perangkat yang tersedia
• Memori perangkat maks
• Penjadwal IO yang tersedia
• Blok Baca
• Blokkan Swappiness
• Blokkan Tekanan Cache
• Blok Ransum Kotor
• entropi acak
• Blok Overcommit
• Blok Halaman Cluster
• BLOK Centisec Kotor
• Blokir LMK
• Blok Mode Laptop
• Blokir KSM
• Tunai interaktif yang dihasilkan secara unik
• Tunai Tadaran yang dihasilkan secara unik
TANPA BENTUK PREDIKSI PENGGUNA, GAME dapat mulai tertinggal sejenak selama adegan pemuatan, di mana persyaratan beban dips. Untuk menangkal ini, Subcor mengimplementasikan algoritma prediksi pengguna yang mencoba mempertahankan fluiditas dalam aplikasi berat, bahkan selama momen beban rendah. Ini bekerja dengan menentukan rata-rata beban berulang, dan tidur lebih lama ketika beban konsisten.
Sejak Subcore adalah alat level rendah (belum Userspace), ia memiliki akses langsung ke statistik baterai. Saat mengisi daya (dan menyaring), Subcor akan meningkatkan kinerja Anda ke profil kinerja tertinggi untuk memastikan pengalaman pengguna / UX, mengabaikan batasan energi. Selain itu, ketika subcore mendeteksi perangkat pada 15% baterai atau kurang, itu akan setengah loadavg, yang berarti membutuhkan beban CPU dua kali lebih banyak untuk memasukkan profil berikutnya. Demikian juga, pada baterai 5% atau kurang, subcore mengunci perangkat ke dalam profil terendah, yang dioptimalkan untuk tidur nyenyak atau menganggur, mengorbankan sebagian kinerja ke baterai. Pengaturan ini dapat dinonaktifkan dengan mengubah "Nonaktifkan Power Sadar" di aplikasi GUI Subcore.
Subcore mengimplementasikan konsep baru yang saya sebut rupg. Apa yang membuat subcore istimewa adalah fakta bahwa itu kompatibel dengan dasarnya semua perangkat. Saat runtime, Subcor awalnya mengumpulkan banyak data untuk menghasilkan banyak profil spesifik perangkat berdasarkan berbagai faktor. Profil yang dihasilkan ini sangat dioptimalkan untuk setiap perangkat, sehingga setiap pengguna mencapai pengalaman perangkat lunak yang paling efisien untuk perangkat keras / perangkat lunak yang tersedia yang disediakan. Profil ini kemudian disimpan dalam memori dan ditandai untuk dihapus ketika subcore keluar. Beberapa contoh di mana rupg digunakan adalah pada generasi perangkat LMK spesifik perangkat (minfree). Setiap perangkat memiliki ukuran RAM yang berbeda, sehingga subcore harus secara manual menghitung ukuran LMK Minfree optimal untuk setiap vektor offset (very_light -> very_aggressives). Subcore juga memanfaatkan rupg dalam produksi tunai gubernur. Setiap perangkat memiliki tabel frekuensi SOC CPU yang berbeda, yang harus dipertanggungjawabkan. Profil ini dihasilkan secara otomatis oleh biner, sehingga pengguna tidak perlu menyempurnakan diri mereka sendiri.
Subcor menghasilkan peningkatan masa pakai baterai yang terlihat, selama layar on dan screen off.
Saya ingin secara pribadi berterima kasih kepada semua penguji saya karena mengorbankan ponsel mereka ke kode saya. Masing-masing dari mereka dibantu dalam stabilitas program itu sendiri.
@dotmiracle
@eFranz
@ KDRAG0N
@ ashley117
@ abhirams2020
@mountaser_halak
> Untuk subcore berfungsi dengan baik, harap pastikan hal-hal berikut ini benar:
• Pastikan subcore selalu diberikan root.
• Gunakan mode memori rendah jika perangkat tidak memiliki zram atau zcache, atau jika Anda perhatikan Aplikasi Masuk / Tidak Membuka.
Pengguna dapat menghubungi saya kapan saja untuk umpan balik.
Gmail: tylernij@gmail.com
Telegram: @tytydraco
xda: @tytydraco
- Refactor low-memory mode to Memory-Aware
- Improve memory-aware RAM management (increase cache pressure)