BLAS-LAPACK-ATLAS-R安装多线程?

时间:2013-04-05 19:04:55

标签: r gcc atlas

我正在尝试在具有8核AMD athlon FX-8320的OpenSuSE 12.2服务器上设置ATLAS,BLAS,LAPACK和R.我已经使用cpufreq和James McDaniel制作的paste.opensuse.org/92162247中的脚本cfu关闭了CPU频率缩放。

按照说明操作,这里http://math-atlas.sourceforge.net/atlas_install/node45.html我不需要安装gcc(我知道)我安装了gcc(SUSE Linux)4.7.1 20120723,g ++和gfortran与gcc版本相同

指令是对ATLAS进行伪造配置以确定要使用的编译器标志。 ATLAS在指令中配置为'../configure -b 64 -D c -DPentiumCPS = 2200 -Fa alg -fPIC'。我将其修改为我认为适用于我的设置'../configure -b 64 -t 8 -Fa alg -fpic -A x86_64 -D c -DpentiumCPS = 3500 -Si latune 1 --prefix = / usr / local / lib64 --with-netlib-lapack-tarfile = / opt / maths / lapack-3.4.2.tgz'我收到这些错误。

OS configured as Linux (1)

Assembly configured as GAS_x8664 (2)

Vector ISA Extension configured as  AVXMAC (3,504)
ERROR: enum fam=6, chip=8, mach=0
make[3]: *** [atlas_run] Error 44
make[2]: *** [IRunArchInfo_x86] Error 2
/bin/sh: line 1: 13849 Segmentation fault      ./xarchinfo_linux -a > config0.out
make[3]: *** [atlas_run] Error 139
make[2]: *** [IRunArchInfo_linux] Error 2

Architecture configured as  UNKNOWNx86 (35)
ERROR: enum fam=6, chip=8, mach=0
make[3]: *** [atlas_run] Error 44
make[2]: *** [IRunArchInfo_x86] Error 2

Clock rate configured as 3500Mhz
Parallel make command configured as '$(MAKE) -j 8'
ERROR: enum fam=6, chip=8, mach=0
make[3]: *** [atlas_run] Error 44
make[2]: *** [IRunArchInfo_x86] Error 2
Cannot detect CPU throttling.

Atlas制作一个Make.inc,如果我fgrep F77和F77标志我得到'gfortran-4.7'和'-O -mavx -fpic -m64'。也许-mavx标志处理AVXMAC错误?我需要-mavx吗?我会继续我的指示......

1 个答案:

答案 0 :(得分:0)

(不是真正的答案,但很难作为评论阅读):

关于Dirk建议使用OpenBLAS的更多考虑因素。

我也使用OpenBLAS(在Ubuntu和CentOS系统上)。

  • 对于我来说,在8核和12核计算机上一个重要的考虑因素是OpenBLAS允许动态设置要使用的线程数,ATLAS doesn't。为了在R中设置动态线程数,我使用Simon Fuller's OpenBLASThreads

  • 在两个系统上构建OpenBLAS非常简单。

  • 二进制.deb包可用,但上次检查时,它们的最大线程数设置为2. However, this is going to change。到目前为止,我还使用>在Ubuntu机器上从源代码构建库。 2核。