Dún fógra

Mike Ash tiomnaithe ar a bhlag na himpleachtaí praiticiúla a bhaineann le hathrú go ailtireacht 64-giotán san iPhone 5S. Tarraingíonn an t-alt seo ar a thorthaí.

Is é an chúis atá leis an téacs seo go príomha ná an méid mór mífhaisnéise atá á scaipeadh faoi cad a chiallaíonn an iPhone 5s nua le próiseálaí ARM 64-giotán d'úsáideoirí agus don mhargadh. Anseo déanfaimid iarracht faisnéis oibiachtúil a thabhairt maidir le feidhmíocht, cumais agus impleachtaí an aistrithe seo d'fhorbróirí.

"64 giotán"

Tá dhá chuid de phróiseálaí ar féidir leis an lipéad "X-giotán" tagairt a dhéanamh dóibh - leithead na gclár slánuimhir agus leithead na dtreoir. Ar ámharaí an tsaoil, is ionann na leithead seo i bhformhór na bpróiseálaithe nua-aimseartha, mar sin i gcás an A7 ciallaíonn sé seo cláir slánuimhir 64-giotán agus leideanna 64-giotán.

Mar sin féin, tá sé chomh tábhachtach céanna a chur in iúl cad NÍ chiallaíonn "64bit": Méid seoladh fisiciúil RAM. Níl baint ag líon na ngiotán chun cumarsáid a dhéanamh le RAM (dá bhrí sin an méid RAM is féidir le gléas a thacú) le líon na ngiotán LAP. Tá áit ar bith idir seoltaí 26- agus 40-giotán ag próiseálaithe ARM agus is féidir iad a athrú go neamhspleách ar an gcuid eile den chóras.

  • Méid bus sonraí. Tá an méid sonraí a fhaightear ó RAM nó ó chuimhne maolánach neamhspleách ar an bhfachtóir seo mar an gcéanna. Féadfaidh treoracha próiseálaí aonair méideanna éagsúla sonraí a iarraidh, ach seoltar i smután iad nó faightear níos mó ná mar is gá ón gcuimhne. Braitheann sé ar mhéid an chandamach sonraí. Faigheann an iPhone 5 sonraí ón gcuimhne cheana féin i 64-giotán quanta (agus tá próiseálaí 32-giotán), agus is féidir linn teacht ar mhéideanna suas le 192 giotán.
  • Rud ar bith a bhaineann le snámhphointe. Tá méid na gclár sin (FPU) neamhspleách arís ar oibriú inmheánach an phróiseálaí. Tá ARM ag baint úsáide as FPU 64-giotán ó shin i leith ARM64 (próiseálaí ARM 64-giotán).

Buntáistí agus míbhuntáistí ginearálta

Má dhéanaimid comparáid idir ailtireachtaí 32-giotán agus 64-giotán atá comhionann ar bhealach eile, de ghnáth ní bhíonn siad chomh difriúil sin. Tá sé seo ar cheann de na cúiseanna atá leis an mearbhall ginearálta an phobail ag lorg fáth go bhfuil Apple ag bogadh go 64bit i gléasanna soghluaiste chomh maith. Mar sin féin, tagann sé go léir ó pharaiméadair shonracha an phróiseálaí A7 (ARM64) agus an chaoi a n-úsáideann Apple é, ní hamháin ón bhfíric go bhfuil ailtireacht 64-giotán ag an bpróiseálaí.

Mar sin féin, má táimid fós ag breathnú ar na difríochtaí idir an dá ailtireacht, beidh muid ag teacht ar roinnt difríochtaí. Is é an rud is léir gur féidir le cláir slánuimhreacha 64-giotán slánuimhreacha 64-giotán a láimhseáil ar bhealach níos éifeachtaí. Fiú roimhe seo, bhíothas in ann oibriú leo ar phróiseálaithe 32-giotán, ach de ghnáth chiallaigh sé seo iad a roinnt ina bpíosaí fada 32-giotán, rud a d'eascair ríomhaireachtaí níos moille. Mar sin is féidir le próiseálaí 64-giotán de ghnáth ríomh le cineálacha 64-giotán díreach chomh tapa agus is le cinn 32-giotán. Ciallaíonn sé seo gur féidir le hiarratais a úsáideann cineálacha 64-giotán go ginearálta rith i bhfad níos tapúla ar phróiseálaí 64-giotán.

Cé nach ndéanann 64bit difear don mhéid iomlán RAM is féidir leis an bpróiseálaí a úsáid, is féidir é a dhéanamh níos éasca oibriú le píosaí móra RAM in aon chlár amháin. Níl ach thart ar 32 GB de spás seoltaí ag aon ríomhchlár amháin a ritheann ar phróiseálaí 4-giotán. Ag cur san áireamh go nglacann an córas oibriúcháin agus na leabharlanna caighdeánacha rud éigin, fágann sé seo go bhfuil an clár áit éigin idir 1-3 GB le húsáid feidhmchláir. Mar sin féin, má tá níos mó ná 32 GB RAM ag córas 4-giotán, tá úsáid an chuimhne sin beagán níos casta. Ní mór dúinn dul i muinín an chórais oibriúcháin a bhrú chun na smután cuimhne níos mó seo a mhapáil dár gclár (fíorúlaú cuimhne), nó is féidir linn an clár a roinnt ina phróisis iolracha (áit a bhfuil 4 GB de chuimhne ar fáil i ngach próiseas arís go teoiriciúil le seoladh díreach).

Mar sin féin, tá na "hacks" seo chomh deacair agus chomh mall go n-úsáideann íosmhéid feidhmchlár iad. Go praiticiúil, ar phróiseálaí 32-giotán, ní úsáidfidh gach clár ach a chuimhne 1-3 GB, agus is féidir RAM níos mó atá ar fáil a úsáid chun ilchláir a reáchtáil ag an am céanna nó an chuimhne seo a úsáid mar mhaolán (caching). Tá na húsáidí seo praiticiúil, ach ba mhaith linn go mbeadh aon chlár in ann smután cuimhne níos mó ná 4GB a úsáid go héasca.

Anois táimid ag teacht ar an éileamh go minic (i ndáiríre mícheart) go bhfuil ailtireacht 4-giotán gan úsáid gan níos mó ná 64GB de chuimhne. Tá spás seoltaí níos mó úsáideach fiú ar chóras le níos lú cuimhne. Uirlis áisiúil is ea comhaid atá léarscáilithe le cuimhne ina bhfuil cuid d’inneachar an chomhaid nasctha go loighciúil le cuimhne an phróisis gan an comhad iomlán a luchtú isteach sa chuimhne. Mar sin, is féidir leis an gcóras, mar shampla, comhaid mhóra a phróiseáil de réir a chéile a mhéad uair níos mó ná an toilleadh RAM. Ar chóras 32-giotán, ní féidir comhaid mhóra den sórt sin a mhapáil le cuimhne go hiontaofa, ach ar chóras 64-giotán, is píosa císte é, a bhuíochas leis an spás seolta i bhfad níos mó.

Mar sin féin, tá míbhuntáiste mór amháin ag baint le méid níos mó na dtreoir: nó bíonn níos mó cuimhne ag teastáil ó chláir chomhionanna ar phróiseálaí 64-giotán (ní mór na leideanna níos mó seo a stóráil áit éigin). Ós rud é gur minic a bhíonn leideanna mar chuid de chláir, is féidir leis an difríocht seo an taisce a ualach, rud a fhágann go n-imeoidh an córas ar fad níos moille. Mar sin, i bpeirspictíocht, is féidir linn a fheiceáil má d'athraigh muid ailtireacht an phróiseálaí go 64-giotán, go gcuirfeadh sé moill ar an gcóras iomlán. Mar sin ní mór an fachtóir seo a chothromú le níos mó optimizations in áiteanna eile.

ARM64

Ní hamháin gur próiseálaí rialta ARM le cláir níos leithne é an A7, an próiseálaí 64-giotán a chumhachtaíonn an iPhone 5s nua. Tá feabhsuithe móra i ARM64 ar an leagan 32-giotán níos sine.

Próiseálaí Apple A7.

clárlann

Coinníonn ARM64 dhá oiread clár slánuimhir le ARM 32-giotán (bí cúramach gan mearbhall a dhéanamh ar líon agus leithead na gclár - labhair muid faoi leithead sa rannóg "64-giotán". Mar sin tá dhá oiread cláir chomh leathan agus dhá oiread ag ARM64 cláir). Tá 32 clár slánuimhir ag an ARM 16-giotán: cuntar clár amháin (PC - tá uimhir an treoir reatha), pointeoir cruachta (pointeoir d'fheidhm atá ar siúl), clár naisc (pointeoir chuig an tuairisceán tar éis an deireadh den fheidhm), agus tá na 13 eile le húsáid feidhmchláir. Mar sin féin, tá 64 clár slánuimhir ag an ARM32, lena n-áirítear clár nialais amháin, clár naisc, pointeoir fráma (cosúil le pointeoir cruachta), agus ceann atá curtha in áirithe don todhchaí. Fágann sin go bhfuil 28 clár againn le húsáid iarratais, níos mó ná dhá oiread an ARM 32-giotán. Ag an am céanna, rinne an ARM64 líon na gclár uimhreacha snámhphointe (FPU) a dhúbailt ó 16 go 32 clár 128-giotán.

Ach cén fáth a bhfuil líon na gclár chomh tábhachtach sin? Go ginearálta bíonn cuimhne níos moille ná ríomhanna LAP agus féadann léitheoireacht/scríbhneoireacht a bheith an-fhada a ghlacadh. Chuirfeadh sé seo go mbeadh ar an bpróiseálaí gasta fanacht ag fanacht leis an gcuimhne agus bhuailfí luasteorainn nádúrtha an chórais. Déanann próiseálaithe iarracht an bac seo a cheilt le sraitheanna maoláin, ach tá fiú an ceann is tapúla (L1) níos moille fós ná ríomh an phróiseálaí. Mar sin féin, is cealla cuimhne iad na cláir go díreach sa phróiseálaí agus bíonn a léamh/scríbhneoireacht tapa go leor chun gan an próiseálaí a mhoilliú. Ciallaíonn líon na gclár go praiticiúil méid an chuimhne is tapúla le haghaidh ríomhanna próiseálaí, rud a chuireann isteach go mór ar luas an chórais ar fad.

Ag an am céanna, caithfidh an luas seo tacaíocht leas iomlán a bhaint as an tiomsaitheoir, ionas gur féidir leis an teanga na cláir seo a úsáid agus ní gá gach rud a stóráil sa chuimhne iarratais ghinearálta (an mall).

Sraith treoracha

Tugann ARM64 athruithe móra ar an tacar treoracha freisin. Is éard is tacar treoracha ann ná tacar d’oibríochtaí adamhach is féidir le próiseálaí a dhéanamh (eg cuireann ‘ADD register1 register2’ na huimhreacha in dhá chlár). Tá na feidhmeanna atá ar fáil do theangacha aonair comhdhéanta de na treoracha seo. Caithfidh feidhmeanna níos casta níos mó treoracha a fhorghníomhú, ionas gur féidir leo a bheith níos moille.

Tá treoracha nua in ARM64 maidir le feidhmeanna criptithe AES, SHA-1 agus SHA-256. Mar sin, in ionad cur i bhfeidhm casta, is í an teanga amháin a thabharfar ar an teagasc seo - rud a chuirfidh luas mór le ríomh feidhmeanna den sórt sin agus táthar ag súil le slándáil bhreise in fheidhmchláir. E.g. Úsáideann an Touch ID nua na treoracha seo i gcriptiú freisin, rud a ligeann do fhíorluas agus slándáil (go teoiriciúil, bheadh ​​ar ionsaitheoir an próiseálaí féin a mhodhnú chun rochtain a fháil ar na sonraí - rud nach bhfuil praiticiúil a rá a laghad mar gheall ar a mhéid beag).

Comhoiriúnacht le 32 giotán

Tá sé tábhachtach a lua gur féidir leis an A7 rith go hiomlán i mód 32-giotán gan gá le aithris. Ciallaíonn sé gur féidir leis an iPhone 5s nua feidhmchláir a chuirtear le chéile ar ARM 32-giotán a reáchtáil gan aon mhoilliú. Mar sin féin, ní féidir leis na feidhmeanna nua ARM64 a úsáid, mar sin is fiú i gcónaí tógáil speisialta a dhéanamh díreach don A7, ba cheart go rithfidh sé i bhfad níos tapúla.

Athruithe ama rite

Is é Runtime an cód a chuireann feidhmeanna leis an teanga ríomhchlárúcháin, ar féidir é a úsáid agus an feidhmchlár á rith, go dtí tar éis an aistriúcháin. Ós rud é nach gá do Apple comhoiriúnacht feidhmchláir a choinneáil (go ritheann dénártha 64-giotán ar 32-giotán), d'fhéadfadh sé go mbeadh sé d'acmhainn acu roinnt feabhsuithe breise a dhéanamh ar an teanga Cuspóir-C.

Is é ceann acu mar a thugtar air pointeoir clibeáilte (táscaire marcáilte). Go hiondúil, déantar rudaí agus leideanna do na rudaí sin a stóráil i gcodanna ar leith den chuimhne. Ligeann cineálacha nua pointeoir, áfach, do ranganna ar bheagán sonraí rudaí a stóráil go díreach sa phointeoir. Cuireann an chéim seo deireadh leis an ngá atá le cuimhne a leithdháileadh go díreach don rud, gan ach pointeoir a chruthú agus an réad taobh istigh de. Ní thacaítear le leideanna clibeáilte ach san ailtireacht 64-giotán freisin toisc nach bhfuil go leor spáis ann a thuilleadh i bpointeoir 32-giotán chun go leor sonraí úsáideacha a stóráil. Mar sin, níor thacaigh iOS, murab ionann agus OS X, leis an ngné seo fós. Mar sin féin, le teacht ARM64, tá sé seo ag athrú, agus tá iOS tar éis teacht suas le OS X maidir leis seo freisin.

Cé go bhfuil na leideanna 64 giotán ar fad, ar an ARM64 ní úsáidtear ach 33 giotán do sheoladh an phointeora féin. Agus má tá muid in ann an chuid eile de na píosaí pointeoir a dhímharcáil go hiontaofa, is féidir linn an spás seo a úsáid chun sonraí breise a stóráil - mar atá i gcás na leideanna clibeáilte a luaitear. Go coincheapúil, is é seo ceann de na hathruithe is mó i stair Cuspóir-C, cé nach gné indíolta é - mar sin ní bheidh a fhios ag an chuid is mó d'úsáideoirí conas atá Apple ag bogadh Cuspóir-C ar aghaidh.

Maidir leis na sonraí úsáideacha is féidir a stóráil sa spás atá fágtha de phointeoir clibeáilte den sórt sin, tá Cuspóir-C, mar shampla, á úsáid anois chun an pointe ar a dtugtar a stóráil comhaireamh tagartha (líon tagairtí). Roimhe seo, coinníodh an comhaireamh tagartha in áit dhifriúil sa chuimhne, i dtábla hais a ullmhaíodh dó, ach d’fhéadfadh sé seo moill a chur ar an gcóras iomlán i gcás líon mór glaonna alloc/dealloc/coimeád/scaoileadh. B'éigean an tábla a ghlasáil mar gheall ar shábháilteacht snáitheanna, mar sin níorbh fhéidir an comhaireamh tagartha de dhá rud in dhá shnáithe a athrú ag an am céanna. Mar sin féin, tá an luach seo curtha isteach as an nua sa chuid eile den mar a thugtar air isa táscairí. Is buntáiste neamhfheiceálach eile é seo agus luasghéarú sa todhchaí. Mar sin féin, ní fhéadfaí é seo a bhaint amach in ailtireacht 32-giotán.

Cuirtear faisnéis faoi rudaí gaolmhara, cibé an bhfuil tagairt lag don réad, cibé an bhfuil sé riachtanach scriostóir a ghiniúint don rud, etc., curtha isteach as an nua freisin san áit threoracha atá fágtha do na rudaí. tá an t-am rite in ann an t-am rite a bhrostú go bunúsach, rud a léirítear i luas gach feidhmchláir. Ó thástáil, ciallaíonn sé seo luas suas 40-50% de na glaonna bainistíochta cuimhne go léir. Trí athrú go leideanna 64-giotán agus an spás nua seo a úsáid.

Conclúid

Cé go ndéanfaidh iomaitheoirí iarracht an smaoineamh a scaipeadh nach bhfuil gá le bogadh chuig ailtireacht 64-giotán, beidh a fhios agat cheana féin nach bhfuil anseo ach tuairim an-neamhfhiosrach. Is fíor nach gciallaíonn aistriú go 64-giotán gan do theanga nó feidhmchláir a oiriúnú rud ar bith - cuireann sé moill ar an gcóras iomlán fiú. Ach úsáideann an A7 nua ARM64 nua-aimseartha le sraith treoracha nua, agus tá Apple tar éis an trioblóid an teanga Cuspóir-C ar fad a nuachóiriú agus leas a bhaint as na cumais nua - mar sin an luas a bhí geallta.

Anseo tá líon mór cúiseanna luaite againn gurb é ailtireacht 64-giotán an chéim cheart chun cinn. Is réabhlóid eile é "faoin gcochall", a bhuíochas sin déanfaidh Apple iarracht fanacht ar thús cadhnaíochta, ní hamháin le dearadh, comhéadan úsáideora agus éiceachóras saibhir, ach go príomha leis na teicneolaíochtaí is nua-aimseartha ar an margadh.

Foinse: mikeash.com
.