Ua hōʻike ʻia ka polokalamu pale LVI a Google i kahi pānaʻi 14x

ʻO Zola Bridges mai Google manaoia no ka hoʻonohonoho hoʻonohonoho LLVM, kahi ʻāpana me ka hoʻokō ʻana i ka pale SESES (Speculative Execution Side Effect Suppression), e kōkua ana i ka pale ʻana i ka hoʻouka ʻana i ka mīkini hoʻokō speculative i nā Intel CPU, e like me LVI. Hoʻokō ʻia ke ʻano palekana ma ka pae compiler a hoʻokumu ʻia ma ka hoʻohui ʻana i nā ʻōlelo aʻoaʻo a ka mea hoʻohui i ka wā e hana ai i nā code mīkini. LFENCE, i hoʻokomo ʻia ma mua o kēlā me kēia hoʻomanaʻo heluhelu a kākau ʻana i ke aʻo ʻana, a ma mua o ke aʻo ʻana o ka lālā mua i ka hui o nā kuhikuhi e hoʻopau i ka poloka.

Ke kali nei ka ʻōlelo aʻoaʻo LFENCE no nā heluhelu hoʻomanaʻo mua a pau e hana a hoʻopau i ka preemption o nā ʻōlelo aʻe ma hope o LFENCE a hiki i ka pau ʻana o ka hana. Ke alakaʻi nei ka hoʻohana ʻana iā LFENCE i ka emi nui o ka hana, no laila ua manaʻo ʻia e hoʻohana ʻia ka pale i nā hihia koʻikoʻi no nā code koʻikoʻi. Ma waho aʻe o ka pale piha, hāʻawi ka patch i ʻekolu mau hae e ʻae iā ʻoe e koho i kekahi mau pae o ka pale e hōʻemi i ka hopena maikaʻi ʻole i ka hana.

Ma nā hoʻokolohua i hana ʻia, ʻo ka hoʻohana ʻana i ka pale SESES no ka pōʻai BoringSSL ua alakaʻi i ka hōʻemi ʻana i ka helu o nā hana i kēlā me kēia kekona i hana ʻia e ka hale waihona puke e 14 mau manawa - ʻo ka hana o ka mana pale o ka waihona ma ka awelika he 7.1% wale nō o ka waihona. ʻAʻole i pale ʻia (ka hoʻololi ʻana ma muli o ka hoʻāʻo mai 4% a 23%).

No ka hoʻohālikelike, manaoia Ma mua, no GNU Assembler, he mīkini e hana ana i ka hoʻololi LFENCE ma hope o kēlā me kēia hana hoʻouka hoʻomanaʻo a ma mua o kekahi mau ʻōlelo aʻoaʻo i hōʻike i ka emi ʻana o ka hana ma kahi o 5 mau manawa (22% o ke code me ka pale ʻole). ʻO ke ʻano palekana kekahi noiʻi ʻia и hoʻokō ʻia e nā Intel engineers, akā ʻaʻole i paʻi ʻia nā hopena hoʻokolohua hana no ia. I ka wā mua, ua wānana ka poʻe noiʻi i ʻike i ka hoʻouka kaua LVI i ka emi ʻana o 2-19 i ka hana i ka wā e noi ai i ka pale piha.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka