跨通道的混選指令,由上圖可見,AVX2.0中可以實(shí)現(xiàn)任何位置見的混選

可變的移位操作:每一個(gè)元素對應(yīng)不同的移位控制數(shù),使得每一個(gè)元素可以實(shí)現(xiàn)移動(dòng)不同的位數(shù)。共有三種移位指令,包括邏輯左移、邏輯右移和算術(shù)右移(算術(shù)左移與邏輯左移完全一樣)。

可變的移位指令

新的廣播操作:256位寄存器中可以放8個(gè)浮點(diǎn)數(shù),有時(shí),程序員希望把8個(gè)浮點(diǎn)數(shù)復(fù)制成同一個(gè)數(shù),可以使用數(shù)組、排列、混合指令等操作實(shí)現(xiàn),但是現(xiàn)在有了廣播指令,只需要一條指令就可以實(shí)現(xiàn)。事實(shí)上,AVX1.0就有廣播操作,只支持內(nèi)存和寄存器,現(xiàn)在數(shù)據(jù)既可以放內(nèi)存又可以放寄存器。

加載離散數(shù)據(jù):數(shù)據(jù)放在內(nèi)存中可能不是連續(xù)的,通過AVX2.0可以把離散數(shù)據(jù)集中起來,避免了矢量化。加載離散數(shù)據(jù)操作既支持整數(shù)又支持浮點(diǎn)數(shù)。

圖 離散數(shù)據(jù)加載指令按照加載數(shù)和索引數(shù)的類型分為八類

乘加融合指令:完成(axb)+/-c只需一條指令,并且,-axb的中間結(jié)果在做加減之前不會進(jìn)行舍入,這樣既提高了計(jì)算速度又提高了計(jì)算精度。乘加融合之靈對于矩陣乘法、點(diǎn)乘和多項(xiàng)式求和等運(yùn)算十分有用。

分享到

tangrong

相關(guān)推薦