4
如果i
是像下面那樣的隨機行走(每個索引不是唯一的),並且存在填充零的設備向量A
。帶推力的直方圖計算
{0, 1, 0, 2, 3, 3, ....}
難道推力可以使A[i]
自動遞增,操作A
後,可能看起來像
//2 means appears count of 0's
//1 means appears count of 1's
//1 means appears count of 2's
//2 means appears count of 3's
{2, 1, 1, 2}
我試過幾種情況,但這些情況下,只有正常工作時A
是主機向量,我猜是因爲推力做平行,它以前的結果不會影響新的結果,結果可能看起來像 //只計數一次,無論索引出現多少次 {1,1,1, 1}
可以用設備向量A和隨機遊走索引向量來實現我的目標嗎?
thrust :: sort then thrust :: reduce_by_key – kangshiyin
我嘗試了排序,但性能不夠好,所以現在我使用「主機向量+直方圖」方法來實現我的目標。新方法的執行時間(包含設備<-->主機開銷)比排序版本短。我對更好的解決方案感興趣,並在這裏問。 – user1995868
http://docs.nvidia.com/cuda/cuda-samples/index.html#cuda-histogram – kangshiyin