楼主: nuomin
9443 9

[程序分享] 替换R的BLAS的方法 [推广有奖]

  • 8关注
  • 61粉丝

版主

已卖:573份资源

院士

34%

还不是VIP/贵宾

-

TA的文库  其他...

Lisp

计量模型入门与精通

威望
1
论坛币
170716 个
通用积分
8029.6016
学术水平
207 点
热心指数
257 点
信用等级
151 点
经验
878 点
帖子
2429
精华
0
在线时间
4069 小时
注册时间
2005-11-15
最后登录
2025-11-15

初级热心勋章 中级热心勋章 初级信用勋章

楼主
nuomin 发表于 2014-1-2 21:40:27 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
在64位win7下安装OpenBLAS的步骤如下:
1.从压缩文件OpenBLAS-v0.2.8-x86_64-Win.zip中解压libopenblas.dll到R目录下\bin\x64目录中。将此目录中Rblas.dll文件名改成Rblas.dll.back作为备份。将libopenblas.dll文件名改成Rblas.dll。
2.从adda_1.2_win64.zip中解压libgfortran_64-3.dll和libquadmath_64-0.dll文件到R目录下\bin目录中。将libgfortran_64-3.dll文件名改为libgfortran-3.dll即可。

以上是64位win7下的安装过程。如果是32位的win7,请下载http://jaist.dl.sourceforge.net/ ... -v0.2.8-x86-Win.zip,解压替换Rblas.dll即可


安装OpenBLAS之后效果很明显。在自己的机器上试验对比如下:
用R自带的Rblas计算结果:
  1. > x <- matrix(rnorm(14761*14761,3,0.2),ncol=14761)
  2. > gc()
  3.             used   (Mb) gc trigger   (Mb)  max used   (Mb)
  4. Ncells    208382   11.2     407500   21.8    350000   18.7
  5. Vcells 218197628 1664.8  458133964 3495.3 436245544 3328.3
  6. > system.time(y <- solve(x))
  7.    user  system elapsed
  8. 2474.36    5.29 2558.25
复制代码

安装OpenBLAS之后再运算一次
  1. > x <- matrix(rnorm(14761*14761,3,0.2),ncol=14761)
  2. > gc()
  3.             used   (Mb) gc trigger   (Mb)  max used   (Mb)
  4. Ncells    185240    9.9     407500   21.8    350000   18.7
  5. Vcells 218169033 1664.5  458103950 3495.1 436216959 3328.1
  6. > system.time(y <- solve(x))
  7.    user  system elapsed
  8. 351.25    7.24  256.95
复制代码

差距大概有十倍,一个数量级,效率提升很可观。


--------------------------------
需要的两个文件在这里
OpenBLAS-v0.2.8-x86_64-Win.zip (14.27 MB) adda_1.2_win64.zip (4.3 MB)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Fortran System Source Cells Open 压缩文件

已有 1 人评分学术水平 热心指数 收起 理由
求证1加1 + 1 + 1 精彩帖子

总评分: 学术水平 + 1  热心指数 + 1   查看全部评分

本帖被以下文库推荐

沙发
jmpamao 发表于 2014-1-3 00:00:01
从 julia lang中了解到openBLAS,支持国人http://speed.julialang.org/comparison/

藤椅
Ericabc 发表于 2014-1-3 00:26:44
win7 64位R 3.0.2按楼主的方法安装后提示系统中丢失libgfortran-3.dll,请详解

板凳
Lisrelchen 发表于 2014-1-3 00:42:51
It looks like R is replaced by OpenBLAS when the whole world are studying R language which scared me. Not very long ago, Andew Gelman Announced his Stan is going to replace WinBUGS. Searching online, I found that OpenBLAS is actually One of the software to powers R, which stands for Basic Linear Algebra Subprograms, and felt much better.
For detail, please readhttp://www.r-bloggers.com/an-openblas-based-rblas-for-windows-64/.

报纸
hs4601 发表于 2014-1-3 08:16:58

地板
nuomin 发表于 2014-1-3 08:40:52
Ericabc 发表于 2014-1-3 00:26
win7 64位R 3.0.2按楼主的方法安装后提示系统中丢失libgfortran-3.dll,请详解
2.从adda_1.2_win64.zip中解压libgfortran_64-3.dll和libquadmath_64-0.dll文件到R目录下\bin目录中。将libgfortran_64-3.dll文件名改为libgfortran-3.dll即可

7
tiantanshu 发表于 2016-1-4 18:40:59
似乎adda_1.2_win64.zip中解压libgfortran_64-3.dll和libquadmath_64-0.dll文件到R目录下\bin中的X64目录中才可以

8
nuomin 发表于 2016-1-6 13:24:07
tiantanshu 发表于 2016-1-4 18:40
似乎adda_1.2_win64.zip中解压libgfortran_64-3.dll和libquadmath_64-0.dll文件到R目录下\bin中的X64目录中 ...
最近两个版本的R的BLAS已经更新。使用了更有效率的软件包。OpenBLAS的新版本不稳定(仅仅个人使用心得,不想代表普遍情形)。我用R自带的BLAS了。

9
tiantanshu 发表于 2016-1-6 17:19:42
nuomin 发表于 2016-1-6 13:24
最近两个版本的R的BLAS已经更新。使用了更有效率的软件包。OpenBLAS的新版本不稳定(仅仅个人使用心得,不 ...
我试了一下你发的这个版本,似乎效果挺好的,没有遇到什么不稳定的问题。你是指2.15这个版本有问题么?

10
Ericabc 发表于 2016-1-6 17:24:24
nuomin 发表于 2014-1-3 08:40
2.从adda_1.2_win64.zip中解压libgfortran_64-3.dll和libquadmath_64-0.dll文件到R目录下\bin目录中。将l ...
已解决

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-10 15:40