近日感覺線程束洗牌指令還是很重要的恶导,下面就記錄一下自己的理解。
__shfl_xor命令
int returnValue __shfl_xor(int inputValue,int laneMask,int width=warpSize)
其中,returnValue 是從源線程中那個值返回的值,inputValue是此線程作為源線程輸入給源線程的值涤躲。
laneMask則決定了本線程與那個束內線程相關。那么如何判定關聯(lián)的束內線程id呢贡未?是用束內線程id的按位異或值來表示的种樱,示例如下:
這樣我們比較清楚的了解兩個數(shù)據(jù)交換線程的關系了,當laneMask為1時屬于相鄰蝴蝶式的交叉互換俊卤,為其他值時有類似意義缸托。
當處理的數(shù)為double時的做法
--TODO
--2020.12.27 今日去了上圖借書并待了一天,乘了一次今天開始試運行的18號線瘾蛋。
自然贈與你
樹冠 微風 肩頭的暴雨
片刻后生成
平衡 忠誠 不息的身體 --by 萬青