Aizvērt sludinājumu

Jau gada sākumā Apple pārstāvji viņi apgalvoja, ka jaunais iOS 12 koncentrēsies galvenokārt uz optimizāciju un daži fundamentālāki jaunumi būs jāgaida līdz nākamajam gadam. Lielā mērā tas pats tika teikts arī pirmdienas galvenajā uzrunā, sadaļā par iOS 12. Jā, daži jaunumi patiešām parādīsies gaidāmajā iOS iterācijā, taču galvenā loma ir optimizācijai, kas īpaši iepriecinās vecāku mašīnu īpašniekus ( par to, kā iOS 12 iedvesa dzīvību manā Jau šajā nedēļas nogalē varēsiet lasīt 1. paaudzes iPad Air). Vakar WWDC programmas ietvaros notika lekcija, kurā sīkāk tika skaidrots, ko Apple ir darījis, lai jaunā sistēma darbotos manāmi ātrāk.

Ja jūs patiešām interesē šī tēma un vēlaties uzzināt, kā konkrēti iOS elementi darbojas praksē, iesaku noskatīties lekcijas ierakstu. Tas ir aptuveni 40 minūtes garš un ir pieejams Apple oficiālajā vietnē ar nosaukumu 202. sesija: Kas jauns pakalpojumā Cocoa Touch. Ja nevēlaties tērēt trīs ceturtdaļas stundas, skatoties konferences ierakstu, varat izlasīt kodolīgāku stenogrammu šeittomēr ir nedaudz tehnisks. Pārējiem es mēģināšu tālāk sniegt vienkāršotu kopsavilkumu.

Apskatiet attēlus no iOS 12 atklāšanas:

Izmantojot iOS 12, Apple nolēma koncentrēties uz optimizāciju, jo daudzi lietotāji sūdzējās par atkļūdošanu (īpaši saistībā ar iOS 11). Lielākā daļa negatīvo reakciju bija saistītas ar sistēmas un tās animāciju "lēnumu", "iestrēgšanu" un "negludumu". Tāpēc Apple programmētāji iedziļinājās pašos pamatos un pārvarēja visu iOS animācijas sistēmu. Šie centieni galvenokārt sastāvēja no trim lieliem uzlabojumiem, kas liek iOS 12 darboties tā, kā tas darbojas. Programmētājiem ir izdevies atklāt trūkumus, kas ir bijuši iOS kopš iOS 7.

1. Datu sagatavošana

Pirmā izmaiņa ir tā sauktās Cell Pre-fetch API optimizācija, kas vienkārši parūpējās par sava veida datu sagatavošanu, pirms sistēmai tas patiešām bija vajadzīgs. Neatkarīgi no tā, vai tie bija attēli, animācijas vai citi dati, sistēmai ar šo API bija iepriekš jāatskaņo nepieciešamie faili atmiņā, lai tie būtu pieejami lietošanas laikā un tādējādi nebūtu procesora slodzes lēcienu, kas izraisītu iepriekš minētās plūstamības problēmas. Kā izrādījās, veicot rūpīgu šī algoritma auditu, tas nedarbojās gluži pareizi.

Dažos gadījumos viņš iepriekš sagatavoja datus, citos – ne. Citos gadījumos sistēma ielādēja datus, lai gan tie jau bija sagatavoti šīs API kešatmiņā, un dažreiz notika sava veida "dubultā ielāde". Tas viss izraisīja FPS kritumus animāciju laikā, smalcināšanu un citas sistēmas darbības nekonsekvences.

2. Tūlītēja veiktspēja

Otrā izmaiņa ir ierīces skaitļošanas vienību jaudas pārvaldības modifikācija neatkarīgi no tā, vai tas ir CPU vai GPU. Iepriekšējās sistēmas versijās procesoram bija nepieciešams ievērojami ilgāks laiks, lai pamanītu paaugstinātas aktivitātes prasības un tādējādi palielinātu darbības frekvences. Turklāt šis procesora paātrinājums/palēninājums notika pakāpeniski, tāpēc daudzos gadījumos gadījās, ka sistēmai bija nepieciešama jauda kādam uzdevumam, taču tā nebija uzreiz pieejama, un atkal bija FPS animāciju kritumi utt. Tas mainās iOS 12, jo tieši šeit procesoru veiktspējas līkne ir pielāgota ievērojami agresīvāk, un pakāpeniska frekvenču palielināšana/samazināšanās tagad ir tūlītēja. Tādējādi priekšnesumam jābūt pieejamam brīžos, kad tas ir nepieciešams.

3. Perfektāks automātiskais izkārtojums

Trešās izmaiņas attiecas uz saskarni, ko Apple ieviesa operētājsistēmā iOS 8. Tā ir tā sauktā automātiskā izkārtojuma ietvars, kas tika ieviests iOS laikā, kad Apple sāka palielināt savu iPhone displeju izmēru. Ietvars nodrošināja, ka lietotāja interfeisa izskats ir pareizs neatkarīgi no displeja veida un izmēra, kurā dati tika renderēti. Tas ir sava veida kruķis, kas palīdz izstrādātājiem optimizēt savas lietojumprogrammas (bet ne tikai viņiem, šis ietvars ir iOS sistēmas kā tādas neatņemama sastāvdaļa un rūpējas par visu lietotāja interfeisa daļu pareizu attēlošanu) vairākiem displeja izmēriem. Turklāt visa šī sistēma lielā mērā ir automatizēta. Detalizēti pārbaudot, izrādījās, ka tā darbība ir diezgan prasīga sistēmas resursiem, un lielākā ietekme uz veiktspēju parādījās operētājsistēmā iOS 11. Operētājsistēmā iOS 12 iepriekš minētais rīks ir saņēmis ievērojamu pārveidojumu un optimizāciju, un tā pašreizējā formā tā ietekme uz sistēmas darbību ir ievērojami mazāka, kas lielā mērā atbrīvo CPU/GPU resursus citu lietojumprogrammu un rīku vajadzībām.

Kā redzat, Apple patiešām ir pārņēmis optimizācijas procesus no pīķa, un tas patiešām parādās galaproduktā. Ja jums ir pagājušā gada iPhone vai iPad, negaidiet pārāk daudz izmaiņu. Bet, ja jums pieder divus, trīs, četrus gadus veca ierīce, izmaiņas noteikti būs vairāk nekā pamanāmas. Lai gan iOS 12 pašlaik ir agrīnā stadijā, tā jau darbojas ievērojami labāk nekā jebkura iOS 1 versija manā 11. paaudzes iPad Air.

.