Isoftware kaGoogle yokukhusela i-LVI ibonise ukubetha kwentsebenzo ka-14x

Zola Bridges ezivela kuGoogle cetyiswa kwisethi ye-LLVM compiler, isiqwenga esinokuphunyezwa kwe-SESES (i-Speculative Execution Side Effect Suppression) ukhuseleko, enceda ukuhlaselwa kwebhlokhi kwindlela yokubulawa okucingelwayo kwi-Intel CPUs, njenge I-LVI. Indlela yokukhusela iphunyezwe kwinqanaba lomqokeleli kwaye isekelwe ekongezeni imiyalelo ngumqambi xa uvelisa ikhowudi yomatshini. LFENCE, ezifakwe phambi kwememori nganye efundwayo okanye ibhale umyalelo, kunye nangaphambi komyalelo wesebe lokuqala kwiqela lemiyalelo ephetha ibhloko.

Umyalelo we-LFENCE ulinda yonke inkumbulo yangaphambili ifundelwe ukwenza kwaye ikhubaze ukungahoywa kwemiyalelo elandelayo emva kwe-LFENCE de ukuzinikela kugqitywe. Ukusetyenziswa kwe-LFENCE kukhokelela ekunciphiseni okukhulu ekusebenzeni, ngoko ke ukukhuselwa kucetywayo ukuba kusetyenziswe kwiimeko ezinzima kakhulu kwikhowudi ebalulekileyo. Ukongeza kukhuseleko olupheleleyo, i-patch inika iiflegi ezintathu ezikuvumela ukuba ukhethe ukukhubaza amanqanaba athile okukhusela ukunciphisa impembelelo embi ekusebenzeni.

Kwiimvavanyo eziqhutywe, ukusetyenziswa kwe-SESES yokukhusela iphakheji ye-BoringSSL kukhokelele ekunciphiseni inani lemisebenzi ngomzuzwana eyenziwa lithala leencwadi ngamaxesha angama-14 - ukusebenza koguqulelo olukhuselweyo lwethala leencwadi kumyinge we-7.1% kuphela. inguqulo engakhuselekanga (ukwahluka kuxhomekeke kuvavanyo ukusuka kwi-4% ukuya kwi-23%).

Ukuthelekisa, icetywayo Ngaphambili, kwi-GNU Assembler, i-mechanical eyenza indawo ye-LFENCE emva komsebenzi ngamnye womthwalo wememori kwaye ngaphambi kokuba eminye imiyalelo yesebe ibonise ukwehla komsebenzi malunga namaxesha e-5 (22% yekhowudi ngaphandle kokukhusela). Indlela yokukhusela nayo icetywayo ΠΈ iphunyeziwe ziinjineli ze-Intel, kodwa iziphumo zovavanyo lokusebenza kwayo azikapapashwa. Ekuqaleni, abaphandi abachonga uhlaselo lwe-LVI baqikelele ukuhla kwe-2 ukuya kwi-19-fold xa besebenzisa ukhuseleko olupheleleyo.

umthombo: opennet.ru

Yongeza izimvo