Tutup iklan

Sudah pada awal tahun ini, wakil Apple mereka mendakwa, bahawa iOS 12 baharu akan memberi tumpuan terutamanya pada pengoptimuman dan kami perlu menunggu beberapa berita yang lebih asas sehingga tahun depan. Perkara yang sama telah dikatakan pada ucaptama pada hari Isnin, semasa bahagian mengenai iOS 12. Ya, beberapa berita memang akan muncul dalam lelaran iOS yang akan datang, tetapi peranan utama dimainkan oleh pengoptimuman, yang terutamanya akan menggembirakan pemilik mesin lama ( tentang bagaimana iOS 12 memberi nafas kepada saya Anda akan dapat membaca iPad Air generasi pertama pada hujung minggu ini). Semalam, sebagai sebahagian daripada program WWDC, satu syarahan telah diadakan di mana ia diterangkan dengan lebih terperinci apa yang telah dilakukan oleh Apple untuk menjadikan sistem baharu itu berjalan dengan lebih pantas.

Jika anda benar-benar berminat dengan topik ini dan ingin mengetahui bagaimana elemen tertentu iOS berfungsi dalam amalan, saya syorkan menonton rakaman kuliah. Ia berdurasi kira-kira 40 minit dan boleh didapati di laman web rasmi Apple di bawah tajuk Sesi 202: Perkara Baharu dalam Cocoa Touch. Jika anda tidak mahu membuang masa tiga suku jam menonton rakaman persidangan itu, anda boleh membaca transkrip yang lebih ringkas di sini, bagaimanapun, adalah agak teknikal. Untuk anda yang lain, saya akan mencuba ringkasan ringkas di bawah.

Lihat imej dari pelancaran iOS 12:

Dengan iOS 12, Apple memutuskan untuk menumpukan pada pengoptimuman, kerana ramai pengguna mengadu tentang penyahpepijatan (terutamanya berkaitan dengan iOS 11). Sebilangan besar tindak balas negatif yang berkaitan dengan beberapa jenis "kelambatan", "terperangkap" dan "ketidaklancaran" sistem dan animasinya. Oleh itu, pengaturcara Apple menyelidiki perkara asas dan mengatasi keseluruhan sistem animasi dalam iOS. Usaha ini terdiri terutamanya daripada tiga tweak utama yang menjadikan iOS 12 berjalan seperti yang dilakukannya. Pengaturcara telah berjaya mendedahkan kelemahan yang telah wujud dalam iOS sejak iOS 7.

1. Penyediaan data

Perubahan pertama ialah pengoptimuman apa yang dipanggil Cell Pre-fetch API, yang hanya menjaga sejenis penyediaan data sebelum sistem benar-benar memerlukannya. Sama ada imej, animasi atau data lain, sistem perlu pra-mainkan fail yang diperlukan dalam ingatan dengan API ini supaya ia tersedia apabila ia digunakan dan dengan itu tidak akan berlaku lonjakan dalam beban pemproses, yang akan menyebabkan masalah kecairan yang disebutkan di atas. Ternyata semasa audit menyeluruh terhadap algoritma ini, ia tidak berfungsi dengan betul.

Dalam sesetengah kes dia menyediakan data terlebih dahulu, dalam kes lain dia tidak. Dalam kes lain, sistem memuatkan data walaupun ia telah disediakan dalam cache API ini, dan kadangkala sejenis "pemuatan berganda" berlaku. Semua ini menyebabkan penurunan FPS semasa animasi, pemotongan dan ketidakkonsistenan lain dalam operasi sistem.

2. Prestasi segera

Perubahan kedua ialah pengubahsuaian pengurusan kuasa unit pengkomputeran dalam peranti, sama ada CPU atau GPU. Dalam versi sistem terdahulu, pemproses mengambil masa yang agak lama untuk melihat peningkatan permintaan aktiviti dan dengan itu meningkatkan frekuensi operasinya. Di samping itu, pecutan/penyahpecutan pemproses ini berlaku secara beransur-ansur, jadi dalam banyak kes ia berlaku bahawa sistem memerlukan kuasa untuk beberapa tugas, tetapi ia tidak segera tersedia, dan terdapat sekali lagi penurunan dalam animasi FPS, dsb. Ini berubah dalam iOS 12, kerana di sinilah keluk prestasi pemproses telah dilaraskan dengan ketara dengan lebih agresif, dan peningkatan/penurunan beransur-ansur dalam frekuensi kini serta-merta. Oleh itu, prestasi harus tersedia pada saat ia diperlukan.

3. Reka letak Auto yang lebih sempurna

Perubahan ketiga berkenaan antara muka yang Apple perkenalkan dalam iOS 8. Ia adalah apa yang dipanggil rangka kerja susun atur Auto, yang memasuki iOS pada masa Apple mula meningkatkan saiz paparan iPhonenya. Rangka kerja memastikan bahawa penampilan antara muka pengguna adalah betul tanpa mengira jenis dan saiz paparan yang digunakan untuk memaparkan data. Ia adalah sejenis tongkat yang membantu pembangun mengoptimumkan aplikasi mereka (tetapi bukan sahaja mereka, rangka kerja ini adalah sebahagian daripada sistem iOS oleh itu dan menjaga paparan yang betul bagi semua bahagian antara muka pengguna) untuk beberapa saiz paparan. Di samping itu, keseluruhan sistem ini sebahagian besarnya adalah automatik. Setelah pemeriksaan terperinci, ternyata operasinya agak menuntut pada sumber sistem, dan kesan terbesar terhadap prestasi muncul dalam iOS 11. Dalam iOS 12, alat yang disebutkan di atas telah menerima reka bentuk semula dan pengoptimuman yang ketara, dan dalam bentuk semasa, ia kesan pada operasi sistem adalah jauh lebih kecil , yang sebahagian besarnya membebaskan sumber dalam CPU/GPU untuk keperluan aplikasi dan alatan lain.

Seperti yang anda lihat, Apple telah benar-benar mengambil proses pengoptimuman dari puncak dan ia benar-benar ditunjukkan dalam produk akhir. Jika anda mempunyai iPhone atau iPad tahun lepas, jangan mengharapkan terlalu banyak perubahan. Tetapi jika anda memiliki peranti berusia dua, tiga, empat tahun, perubahan pasti akan lebih ketara. Walaupun iOS 12 kini berada di peringkat awal, ia sudah berjalan jauh lebih baik daripada mana-mana versi iOS 1 pada iPad Air generasi pertama saya.

.