Ionnsaigh ùr air structaran microarchitectural de luchd-giullachd Intel agus AMD

Thug buidheann de luchd-rannsachaidh bho Oilthigh Virginia agus Oilthigh California seachad seòrsa ùr de ionnsaigh air structaran microarchitectural luchd-giullachd Intel agus AMD, a chaidh a chomharrachadh aig àm innleadaireachd cùil de chomasan CPU gun sgrìobhainn. Tha an dòigh ionnsaigh a thathar a’ moladh a’ toirt a-steach cleachdadh tasgadan meanbh-op eadar-mheadhanach ann am pròiseasairean, a dh’ fhaodar a chleachdadh gus fiosrachadh fhaighinn air ais a chaidh a chruinneachadh nuair a thathar a’ cur an gnìomh tuairmeasach an stiùiridh.

Airson adhbharan optimization, bidh am pròiseasar a ’tòiseachadh air cuid de stiùiridhean a chuir an gnìomh ann am modh tuairmeasach, gun a bhith a’ feitheamh ri àireamhachadh roimhe a chrìochnachadh, agus ma cho-dhùnas e an uairsin nach robh an ro-aithris air fhìreanachadh, bidh e a ’tilleadh an obrachaidh chun staid thùsail aige, ach an dàta air a phròiseasadh rè tha coileanadh tuairmeasach air a thasgadh ann an tasgadan, agus faodar na tha ann a dhearbhadh.

Thathas a’ toirt fa-near gu bheil an dòigh ùr gu math nas fheàrr na ionnsaigh Specter v1, ga dhèanamh duilich an ionnsaigh a lorg agus nach eil e air a bhacadh leis na dòighean dìon a th’ ann mar-thà an-aghaidh ionnsaighean taobh-seanail a tha air an dealbhadh gus casg a chuir air so-leòntachd air adhbhrachadh le coileanadh tuairmeasach stiùireadh (mar eisimpleir, cleachdadh de bhlocaichean stiùiridh LFENCE ag aoidion anns na h-ìrean mu dheireadh de choileanadh tuairmeasach , ach chan eil e a’ dìon an aghaidh aodion tro structaran microarchitectural).

Bidh an dòigh a ’toirt buaidh air modalan pròiseasar Intel agus AMD a chaidh a leigeil ma sgaoil bho 2011, a’ toirt a-steach an t-sreath Intel Skylake agus AMD Zen. Bidh CPUan ùr-nodha a’ briseadh stiùireadh pròiseasar iom-fhillte gu meanbh-obraichean nas sìmplidh coltach ri RISC, a tha air an tasgadh ann an tasgadan air leth. Tha an tasgadan seo gu bunaiteach eadar-dhealaichte bho caches àrd-ìre, chan eil e ruigsinneach gu dìreach agus tha e ag obair mar bufair sruthan airson faighinn gu sgiobalta air toraidhean a bhith a’ còdachadh stiùiridhean CISC gu meanbh-stiùiridhean RISC. Ach, tha luchd-rannsachaidh air dòigh a lorg gus suidheachaidhean a chruthachadh a thig am bàrr nuair a tha còmhstri eadar ruigsinneachd tasgadan agus leigeil le neach breithneachadh a dhèanamh air susbaint an tasgadan meanbh-obrachaidh le bhith a’ sgrùdadh eadar-dhealachaidhean ann an ùine cur an gnìomh gnìomhan sònraichte.

Ionnsaigh ùr air structaran microarchitectural de luchd-giullachd Intel agus AMD

Tha an tasgadan meanbh-obrachaidh ann am pròiseasairean Intel air a sgaradh a thaobh snàithleanan CPU (Hyper-Threading), fhad ‘s a bhios pròiseasairean AMD Zen a’ cleachdadh tasgadan co-roinnte, a chruthaicheas suidheachaidhean airson aodion dàta chan ann a-mhàin taobh a-staigh aon snàithlean gnìomh, ach cuideachd eadar diofar snàithleanan ann an SMT. (aodion dàta a dh’ fhaodadh a bhith eadar còd a ’ruith air diofar choraichean CPU loidsigeach).

Tha luchd-rannsachaidh air dòigh bunaiteach a mholadh airson a bhith a’ lorg atharrachaidhean anns an tasgadan meanbh-obair agus grunn shuidheachaidhean ionnsaigh a leigeas le bhith a’ cruthachadh seanalan tar-chuir dàta falaichte agus a’ cleachdadh còd so-leònte gus dàta dìomhair a leigeil a-mach, an dà chuid taobh a-staigh aon phròiseas (mar eisimpleir, gus dàta pròiseas a leigeil ma sgaoil nuair a thathar a’ cur an gnìomh. còd treas-phàrtaidh ann an einnseanan le JIT agus ann an innealan brìgheil), agus eadar an kernel agus pròiseasan ann an àite luchd-cleachdaidh.

Nuair a chuir iad air dòigh tionndadh de ionnsaigh Specter a’ cleachdadh tasgadan meanbh-obrachaidh, bha e comasach do luchd-rannsachaidh coileanadh de 965.59 Kbps a choileanadh le ìre mearachd 0.22% agus 785.56 Kbps nuair a bha iad a’ cleachdadh ceartachadh mearachd, a thaobh a bhith ag eagrachadh aodion taobh a-staigh an aon sheòladh àite agus ìre sochair. Le aodion a ’dol thairis air diofar ìrean sochair (eadar kernel agus àite luchd-cleachdaidh), bha coileanadh 85.2 Kbps le ceartachadh mearachd air a chur ris agus 110.96 Kbps le ìre mearachd 4%. Nuair a thug iad ionnsaigh air pròiseasairean AMD Zen, a ’cruthachadh aodion eadar diofar choraichean CPU loidsigeach, b’ e an coileanadh 250 Kbps le ìre mearachd 5.59% agus 168.58 Kbps le ceartachadh mearachd. An coimeas ris an dòigh clasaigeach Specter v1, bha an ionnsaigh ùr 2.6 tursan nas luaithe.

Thathas an dùil gum feum dìon an aghaidh ionnsaigh tasgadan micro-op atharrachaidhean a lughdaicheas coileanadh nas motha na ma thug thu comas do dhìon ionnsaigh Specter. Mar cho-rèiteachadh as fheàrr, thathas a’ moladh casg a chuir air ionnsaighean mar sin chan ann le bhith a’ cuir casg air caching, ach aig an ìre de bhith a’ cumail sùil air neo-riaghailteachdan agus a’ comharrachadh stàitean tasgadan a tha àbhaisteach airson ionnsaighean.

Mar a tha ann an ionnsaighean Specter, le bhith ag eagrachadh aodion bhon kernel no pròiseasan eile feumar sreath sònraichte de dh’ òrduighean (innealan) a chuir an gnìomh air taobh pròiseasan an neach-fulang, a’ leantainn gu coileanadh tuairmeasach de stiùiridhean. Chaidh timcheall air 100 inneal coltach ris a lorg anns an kernel Linux, a thèid a thoirt air falbh, ach lorgar dòighean-obrach airson an ginealach bho àm gu àm, mar eisimpleir, co-cheangailte ri ruith prògraman BPF a chaidh an dealbhadh gu sònraichte anns an kernel.

Source: fosgailtenet.ru

Cuir beachd ann