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

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

可變的移位指令

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

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

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

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

分享到

tangrong

相關(guān)推薦