小编Gop*_*pal的帖子

错误代码(-11)::在OpenCL中获取错误"cl_build_program_failure"的所有可能原因是什么?

我在linux上使用ATI RV770显卡,OpenCl 1.0和ati-stream-sdk-v2.3-lnx64.

在运行我的主机代码时,包括以下两个部分来构建内核程序,我得到错误代码(-11)即cl_build_program_failure.这是否意味着编译了内核程序,如果没有,那么它是如何编译和调试的?

const char* KernelPath = "abc_kernel.cl";   //kernel program is in separate file but in same directory of host code..
Run Code Online (Sandbox Code Playgroud)

/ *从内核源代码创建程序对象 ******* /

char* sProgramSource = readKernelSource(KernelPath);
size_t sourceSize =  strlen(sProgramSource) ;
program = clCreateProgramWithSource(context, 1,(const char **) &sProgramSource,&sourceSize, &err);
checkStatus("error while creating program",err);
Run Code Online (Sandbox Code Playgroud)

/ *构建(编译和链接)程序******* /

char* options = (char* )malloc(10*sizeof(char));
strcpy(options, "-g");
err = clBuildProgram(program, num_devices, devices_id, options, NULL, NULL);
checkStatus("Build Program Failed", …
Run Code Online (Sandbox Code Playgroud)

debugging gpu opencl

15
推荐指数
1
解决办法
2万
查看次数

如何通过7-zip存档的加密机制实现key_derivation和key_verification功能?

我很好奇密码恢复如何适用于受密码保护的文件. And I want to know the exact flow of the 7-zip encryption mechanism.

7-zip在CBC模式下使用AES-256加密算法来加密文件或文件夹.密钥由用户提供的基于SHA-256哈希函数的密码短语生成.SHA-256执行2 19(524,288)次,以增加穷举搜索的成本.此外,为了帮助降低字典攻击的风险,在生成哈希之前,salt会附加到原始密码短语.

我的第一个问题是how does key_derivation function work to generate a 256-bit key?IV C对AES CBC模式及其生成方式的重要性是什么?

我的第二个most important question是如何验证密钥解密7-zip存档?我的意思是它的key_verification函数如何工作?

encryption cryptography 7zip password-recovery cryptanalysis

7
推荐指数
1
解决办法
1655
查看次数

中止MPI中所有进程的执行

问题是使用MPI将密码搜索到大小约为10GB的大文件中.我在不同的块大小进程之间划分文件,(Total number of bytes in file / P)其中p是在每个进程中通过循环并行地创建和应用我的搜索逻辑的进程数.我想在一个进程找到解决方案时停止其他进程.

所以要按照两种方法中止我正在使用的所有其他进程.

  1. 第一种方法是在找到解决方案时从进程调用MPI_Abort()函数.
  2. 第二种方法是使用标志并在任何进程找到其解决方案时设置它.设置此标志后,使用非阻塞send/recv/Iprobe函数将其发送到所有其他进程.然后使用每个进程检查此标志if(flag == 1) break; 这样做..

我的第一个问题是上述哪两种方法更好,为什么?
第二个是当我使用第二种方法后,我在成功完成执行后得到了msg ...

* MPI最终确定后MPI_Finalize*发生错误***MPI_ERRORS_ARE_FATAL(再见)[abc:19150] MPI_INIT成功完成前中止; 无法保证所有其他进程都被杀死!

* MPI最终确定后 MPI_Finalize*发生错误* MPI_ERRORS_ARE_FATAL(再见)[abc:19151] MPI_INIT成功完成前中止; 无法保证所有其他进程都被杀死!

c parallel-processing mpi

5
推荐指数
1
解决办法
4700
查看次数

MPI 中 MPI_offset 的范围

我使用 MPI2.2 标准用 C 编写并行程序。我有 64 位机器。

/* MPI offset is long long*/

MPI_Offset my_offset; printf ("%3d: my offset = %lld\n", my_rank, my_offset);

int count; 
MPI_Get_count(&status, MPI_BYTE, &count);

printf ("%3d: read =%d\n", my_rank, count);
Run Code Online (Sandbox Code Playgroud)

我正在逐字节读取一个非常大的文件。为了并行读取文件,我正在使用偏移变量为每个进程设置偏移量。我对 MPI_offset 类型的数据类型感到困惑,那么"whither it is signed or unsigned"长?

我的第二个问题是关于 MPI_Get_count() 函数中使用的“计数变量范围”的限制。因为这里使用这个函数从每个进程的缓冲区中读取所有元素so i think it should also be of the long long type to read such a very large file.

c types mpi

4
推荐指数
1
解决办法
2776
查看次数

MPI标准和Map-Reduce编程模型之间的比较?

正如我所学的,各种并行范例标准的基础知识,例如OpenMP,MPI,OpenCL,可以编写并行程序。但是我对Map-Reduce编程模型不了解很多。

众所周知,各种流行的公司都在遵循Map-Reduce编程模型来解决其庞大的数据密集型任务。MPI和MPI都是为大型并行计算机和工作站群集上的高性能计算而设计的。

所以我的第一个困惑是..我可以使用Map-Reduce模型代替MPI标准吗?反之亦然?还是取决于应用!

它们之间的确切区别是什么?

Which one is better and when?
Run Code Online (Sandbox Code Playgroud)

cloud mapreduce distributed-computing mpi

4
推荐指数
1
解决办法
1461
查看次数