使用 Xeon Phi 进行 R 并行处理,代码更改最少?

2024-03-14

考虑购买几个 Xeon Phi 5110P,但试图估计我需要更改多少代码或需要其他软件。

目前我充分利用R在多核 Windows 机器(24 核)上使用foreach包,传递给其他包forecast, glmnet等来进行我的并行处理。

拥有 Xeon Phi 我知道我想要编译R https://software.intel.com/en-us/articles/running-r-with-support-for-intel-xeon-phi-coprocessors https://software.intel.com/en-us/articles/running-r-with-support-for-intel-xeon-phi-coprocessors据我所知,这可以通过 Parallel Studio XE 的试用版本来完成。

那么我是否需要编辑 R 的 Makeconf 文件,添加 C/C++ 标志和 Phi ?在 Parallel Studio 上的试用期到期之前编译所有需要的包?或者我不需要编辑 Makeconf 来获得以下好处foreach在皮?

似乎其中一些问题将在 R 编译后自动处理,并由数学内核库 (MKL) 完成卸载,但我并不完全确定这一点。

有点相关的问题:如果没有昂贵的英特尔编译器,英特尔至强融核是否也可用? https://stackoverflow.com/questions/15614603/is-the-intel-xeon-phi-usable-without-a-costly-intel-compiler

Revolutionanalytics.com 似乎也有一些相关的博客文章,但对我来说并不完全是结论性的:http://blog.revolutionanalytics.com/2015/05/behold-the-power-of-parallel.html http://blog.revolutionanalytics.com/2015/05/behold-the-power-of-parallel.html


如果您需要的只是矩阵运算,您可以使用此处的 MKL 库进行编译:[Running R with Support for Intel® Xeon Phi™ Coprocessors][1],这需要 Intel Complier。 Microsoft R 是用 MKL 预编译的,但我无法使用自动卸载,我必须使用 Intel 编译器来编译 R 才能正常工作。

您可以使用试用版编译器并在试用期间编译它,看看它是否符合您的目的。

如果你想使用类似的东西foreach通过设置集群来打包,由于每个节点都是一台linux计算机,恐怕你运气不好。 [R-Admin][1] 第 3 页上写着

交叉构建是不可能的:安装 R 会构建 R 的最小版本,然后运行许多版本 R 脚本来完成构建。

您必须使用英特尔编译器从 xeon 主机对 xeon phi 节点进行交叉编译,这是不可行的。

利用 Phi 的最后一种方法是重写代码以直接调用它。 Rcpp 为 C 和 C++ 例程提供了一个简单的接口。如果您发现一个在 xeon 上运行良好的 C 例程,您可以在代码中调用这些节点。我已经使用 CUDA 完成了此操作,Rcpp 是一个薄层,并且有关于如何使用它的很好的示例,如果您将其与调用 phi 卡节点的示例结合起来,您可能可以以更少的开销实现您的目标。

但是,如果您需要的只是矩阵运算,那么没有比良好的双精度 nvidea 卡和在 R 启动期间预加载 nvBlas 更快的超级计算途径了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Xeon Phi 进行 R 并行处理,代码更改最少? 的相关文章

  • 汇总表中各列的字符值比例

    在这种数据框中 df lt data frame w1 c A A B C A w2 c C A A C C w3 c C A B C B 我需要计算所有列中字符值的列内比例 有趣的是 以下代码适用于大型实际数据集 但对上述玩具数据会引发错
  • 使用 RDCOMClient 搜索 Outlook 收件箱

    我尝试使用 RDCOMClient 在 Outlook 收件箱中搜索电子邮件中的特定主题 然后获取附件 我在一封电子邮件上进行了这项工作 但由于主题包含日期元素 我需要搜索成为一个类似的子句 但不太清楚这适合我的下面的查询 outlook
  • R 编程常用工具

    如果已经以不同的方式问过这个问题 我深表歉意 但我找不到任何达到我想要的东西 我真的是从其他软件包 SPSS 开始接触 R 的 当我了解真正可以做什么时 我意识到我还需要其他 工具 这让我想到了我的问题 您有哪些用于开发 R 代码的设置 我
  • 更快的 %in% 运算符

    The 快速匹配 https cran r project org web packages fastmatch index html包实现了更快的版本match对于重复匹配 例如在循环中 set seed 1 library fastma
  • 按特定样本前缀对列名称向量进行子集化

    假设我有一个如下所示的数据框 ca01 lt c 1 10 ca02 lt c 2 11 ca03 lt c 3 12 stuff 1 lt rep test 10 other lt rep 9 10 data lt data frame
  • 计算互相关函数?

    In R 我在用ccf or acf计算成对互相关函数 以便我可以找出哪个移位给我带来最大值 从它的外观来看 R给我一个标准化的值序列 Python 的 scipy 中是否有类似的东西 或者我应该使用fft模块 目前 我正在这样做 xcor
  • 不同 R/lme4 版本的单一拟合结果不匹配

    我试图将 R 版本 3 5 3 lme4 1 1 18 1 的随机效应估计与 R 版本 4 1 1 lme4 1 1 27 1 相匹配 然而 当存在奇异拟合时 这两个版本之间的随机效应存在微小差异 我对奇点警告很满意 但令人费解的是不同版本
  • 通过使用 navbarPanel() 并隐藏导航栏构建多页闪亮应用程序用户端(在 ui.R 中)?

    我想构建一个多页闪亮应用程序 我可以在其中控制用户可以看到哪个页面 迪安 阿塔利确实这个演示应用程序中有类似的东西 https github com daattali advanced shiny tree master multiple
  • 如何使用 xpath 检查某个对象在网页中是否可见?

    我正在 R 中使用 RSelenium 包来进行网络抓取 有时加载网页后 需要检查某个对象在网页中是否可见 例如 library RSelenium open a browser RSelenium startServer remDr lt
  • 用表达式分割轴标签

    我有一个带有包含表达式的长标签的图 我想将其分成两行 在表达式中添加 n 结果不符合预期 ylabel lt expression A very long label with text and n expression alpha bet
  • ubuntu中R的igraph包的安装

    我使用以下命令在 ubuntu 中安装 R 的 igraph 包 install packages igraph 但我收到一条错误消息 警告 无法访问存储库的索引 http ftp iitm ac in cran src contrib h
  • 删除字符串末尾的句点和数字

    如何删除尾随句点 后面紧跟一个数字 长度为一位或两位数字 例子 z lt c awe p 56 red 45 ted 5 you 88 tom 我只想删除 45和 5 你只需要一个简单的正则表达式 z new gsub 0 9 z 一些评论
  • R 将多个值与向量进行比较并返回向量[重复]

    这个问题在这里已经有答案了 我有一个向量 A 对于 A 的每个元素 我想检查它是否等于第二个向量 Targets 中的任何元素 我想要一个逻辑值向量 其长度为 A 作为返回 也提到了同样的问题here http r 789695 n4 na
  • 如何在knitr和RStudio中为word和html设置不同的全局选项?

    我正在使用 RStudio 0 98 932 和 knitr 1 6 想要为word和html设置不同的全局knitr选项 例如 想要将word的fig width和fig height设置为6 html的fig width和fig hei
  • R、Rcpp 与 Armadillo 中矩阵 rowSums() 与 colSums() 的效率

    背景 来自 R 编程 我正在扩展到 C C 形式的编译代码Rcpp 作为循环交换 以及一般的 C C 效果的实践练习 我实现了 R 的等效项rowSums and colSums 矩阵的函数Rcpp 我知道它们以 Rcpp 糖的形式存在 并
  • 如何在 R 中合并同名列表中的数据框?

    我有一个包含很多数据框的列表 如果它们具有相同的名称 我想合并它们 即合并所有具有相同名称 a 和 b 的数据框 像这样 a lt aaaaa b lt bbbbb c lt ccccc g lt list df1 lt data fram
  • 在 R 传单中添加不透明度滑块

    如何在 R leaflet 应用程序中添加滑块来控制特定图层的不透明度 对于这个应用程序 我不想使用闪亮 这里建议 在 R 传单应用程序中添加滑块 https stackoverflow com questions 37682619 add
  • 为什么数据帧上的 is.vector 不返回 TRUE?

    tl dr R 中的向量到底是什么 长版 R 中很多东西都是向量 例如 数字是长度为 1 的数值向量 is vector 1 1 TRUE 列表也是一个向量 is vector list 1 1 TRUE 好的 所以列表是一个向量 显然 数
  • 访问或解析 R 中的 summary() 中的元素

    我运行以下 R 命令来进行 Dunnett 测试并获取摘要 如何访问下面线性假设的每一行 这是摘要输出的一部分 基本上我不知道摘要的结构 我尝试使用名称 但它似乎不起作用 因为我没有看到任何命名属性来提供这一点 library multco
  • picker输入字体或背景颜色

    我在闪亮的仪表板中使用 pickerInput 这很好 除了一个问题 背景颜色和字体颜色太相似 使得过滤器选择难以阅读 有什么办法可以改变背景或字体颜色吗 如果可能的话 我想继续使用 pickerInput 但如果有一个带有 selectI

随机推荐