简单数学的并行性

时间:2019-04-15 14:20:12

标签: r multithreading math openmp shared-memory

我必须对R中的大型数字矩阵(例如100,000 x 20,000)执行很多元素式算术和特殊函数数学运算,包括:

exploglbetadigammaplogis(后勤函数:1 / [1 + exp(-a * x)])和/, *, +, -

math library C source code for R中,基本上没有#pragma omp编译器指令可以利用共享内存多线程并行性。像R这样的[Rfast][2]中用于快速数学运算的专用程序包也没有用于多线程特殊功能的#pragma omp指令。

类似地,据我了解,矩阵代数库(例如BLAS和LAPACK)用于矩阵运算(例如分解),而不用于元素运算。

我希望在AWS上运行R脚本,以加快运行速度,例如使用72或96台核心服务器。

我是否真的必须自己制作R数学库C源代码的副本,只是添加一些#pragma omp指令以利用R中的OpenMP并行性?

我不敢相信R的{​​{1}}或简单的数学库软件包中都不存在像这样的简单并行机制。

0 个答案:

没有答案