prefix-sum

    1热度

    2回答

    我一直在试图运行计算着色器 - 前缀和演示在提供: https://github.com/openglsuperbible/sb7code/blob/master/src/prefixsum/prefixsum.cpp 我使用的确切代码: #define NUM_ELEMENTS 2048 float random_float() { static unsigned int see

    3热度

    1回答

    我正在玩一些Data Parallel Haskell代码,发现自己需要prefix sum。但是,我没有看到dph package前缀总和中的任何基本运算符。 我推出我自己的,但由于我是新来的DPH,我不知道这是否是正确采取并行的优势: {-# LANGUAGE ParallelArrays #-} {-# OPTIONS_GHC -fvectorise #-} module Prefix

    0热度

    1回答

    在我的并行算法的书没有为PRAM模型下面的伪代码: procedure PrefixSumPRAM(A, n): BEGIN b := new Array(2*n-1); b[1] := SumPRAM(A, n); //this will load A with the computation tree and return the sum for i := 1

    1热度

    2回答

    大多数用于并行减少的算法使用共享(本地)内存。 Nvidia,AMD,Intel等。 但是,如果设备没有共享(本地)内存。 我该怎么办? 如果我使用相同的算法,但在全局内存上存储临时值,它会工作正常吗?

    1热度

    1回答

    我有这个数组[1 2 3 4 5 6 7 8 9],我正在执行扫描操作。 我有3个MPI任务,并将每个任务得到3个元素然后每个任务计算其扫描并返回结果掌握任务 task 0 - [1 2 3] => [1 3 6] task 1 - [4 5 6 ] => [4 9 15] task 2 - [7 8 9] => [7 15 24] 现在任务0得到所有的结果[1 3 6] [4 9 15

    0热度

    2回答

    我正在寻找OpenCL中scan(prefixsum)的快速实现。我发现的最好的东西是在Nvidia SDK中,但它已经很老了(2010)。 有没有人知道在OpenCL中扫描的其他任何实现?

    2热度

    2回答

    我有一个内核,它进行一些比较并决定两个对象是否发生碰撞。我想将碰撞对象的ID存储到输出缓冲区。我不想在输出缓冲区中有空隙。我想将每次碰撞记录到输出缓冲区中的唯一索引。 所以我在共享内存(局部总和)和全局内存(全局总和)中创建了一个原子变量。下面的代码显示了发现碰撞时共享变量的增量。现在我没有在全局内存中增加原子变量的问题。 __global__ void mykernel(..., unsigne

    0热度

    1回答

    我写了一段代码来调用内核gpugem3 但我得到的结果是一堆负数而不是前缀扫描。我想知道我的内核调用是错误的还是gpugem3代码有问题? 这里是我的代码: #include <stdio.h> #include <sys/time.h> #include <cuda.h> __global__ void kernel(int *g_odata, int *g_idata, int n