blas、lapack、atlas在Ubuntu上的安装

本文主要介绍atlas的安装。


一、使用到的安装包主要有blas,cblas,lapack,atlas。

   blas和cblas的安装包下载地址为 :

         http://www.netlib.org/blas/blas.tgz   

         http://www.netlib.org/blas/blast-forum/cblas.tgz 

  lapack的官方包地址: http://www.netlib.org/lapack/

  atlas的官方包地址:http://sourceforge.net/projects/math-atlas/

  PS:安装过程中会使用到gfortran编译器,如果没有安装则使用sudo apt-get install gfortran进行安装。


二、 blas的安装

下载文件后,对压缩包进行解压,进入目录,执行命令为:

gfortran -c  -O3 *.f  # 编译所有的 .f 文件,生成 .o文件  
ar rv libblas.a *.o  # 链接所有的 .o文件,生成 .a 文件  
su cp libblas.a /usr/local/lib  # 将库文件复制到系统库目录

三、cblas的安装

进入CBLAS文件夹,根据你自己的计算机平台,将目录下某个 Makefile.XXX 复制为 Makefile.in , XXX表示计算机的平台,如果是Linux,那么就将Makefile.LINUX 复制为 Makefile.in,然后使用下面的命令安装:

cp ../BLAS/libblas.a  testing  # 将上一步编译成功的 libblas.a 复制到 CBLAS目录下的testing子目录  
make # 编译所有的目录  
sudo cp lib/cblas_LINUX.a /usr/local/lib/libcblas.a # 将库文件复制到系统库目录下  


四、lapack的安装

编译 lapack以及lapacke,这一步比较麻烦,首先当然是进入lapack-3.4.2文件夹,然后根据平台的特点,将INSTALL目录下对应的make.inc.XXX 复制一份到 lapack-3.4.2目录下,并命名为make.inc, 这里我复制的是 INSTALL/make.inc.gfortran,因为我这里用的是gfortran编译器。

修改lapack-3.4.2/Makefile, 因为lapack以来于blas库,所以需要做如下修改

#lib: lapacklib tmglib

lib: blaslib variants lapacklig tmglib

make # 编译所有的lapack文件  
cd lapacke # 进入lapacke 文件夹,这个文件夹包含lapack的C语言接口文件  
make # 编译lapacke  
cp include/*.h /usr/local/include #将lapacke的头文件复制到系统头文件目录  
cd .. #返回到 lapack-3.4.2 目录  
cp *.a /usr/local/lib # 将生成的所有库文件复制到系统库目录  

五、altas的安装

这个比较麻烦,不过可以直接使用命令sudo apt-get install libatlas-dev来进行安装。如果想自己手动编译源码,那是要费写波折的,主要问题是由于在编译atlas源码的过程中需要关闭intel芯片即CPU的 throttling。但是目前网站上提供的一些关闭方法都已经行不通了,这主要是CPU芯片的驱动问题,官方的驱动会使得网上的那些方法失效,并不能真的关闭cpu throttling。

经过我资料的查阅,终于找到了解决办法,现在先列举一些网上常见的方法,可以先进行测试,如果可以真正关闭cpu throttling那就最好了。现在列举方法:

1.安装cpufreqd和cpufrequtils,然后用命令关闭:

sudo apt-get install gnome-applets
sudo apt-get install gnome-applets-data
sudo /usr/bin/cpufreq-selector -g performance
通过测试,发现如果是多CPU时,该命令并不能完全更改所有cpu的性能模式,当然更没有关闭cpu throttling,不过Ubuntu12.04及以前的版本可能会关闭cpu throttling。 我在Ubuntu14.04 以后得版本测试都不行。

2 使用cpupower来修改cpu模型:

# 输入命令cpupower, 会提示你如何安装cpupower
sudo apt-get install linux-版本号-generic #根据提示的名字写
sudo cpupower frequency-set -g performance
这个命令可以全部修改cpu模式。想要查看cpu的模式可以使用下面的命令:

cat /sys/devices/system/cpu/cpu{0,1,2,3}/cpufreq/scaling_governor
会得到类似下面的结果:

performance
performance
performance
performance
单从结果上看貌似已经修改了cpu的模式,其实不然,当编译atlas时,还是会报错,说没有关闭cpu throttling。如下面的错误:

CPU Throttling apparently enabled!
It appears you have cpu throttling enabled, which makes timings
unreliable and an ATLAS install nonsensical.  Aborting.
See ATLAS/INSTALL.txt for further information

现在来说说如何彻底关闭cpu throttling(当然是软件临时性关闭,因此也可以从BOIS里面进行关闭)。必须加载cpu驱动的其他模块,其实只要关闭一个就行了,代码如下:

sudo vim /etc/default/grub
#修改其中的一行代码
GRUB_CMDLINE_LINUX_DEFAULT="intel_pstate=disable"

然后用命令更新一下:

sudo grub_mkconfig -0 /boot/grub/grub.cfg

如果还是报错,那重启一次就应该没问题了。

接下来再用上述的第二种方法关闭cpu throttling就好了。

既然关闭好cpu throttling了,接下来就可以编译atlas了。这个网上教程还是有的,这里给出一个常规的步骤:

bunzip2 -c atlas3.10.x.tar.bz2 | tar xfm -    # create SRCdir
mv ATLAS ATLAS3.10.x                          # get unique dir name
mkdir build                         # create BLDdir
cd build                            # enter BLDdir
../configure -b 64 -D c -DPentiumCPS=2400 \   # configure command
    --prefix=/home/whaley/lib/atlas \           # install dir
    --with-netlib-lapack-tarfile=/home/whaley/dload/lapack-3.4.1.tgz  #lapack所在的目录
make build                                    # tune & build lib
make check                                    # sanity check correct answer
make ptcheck                                  # sanity check parallel
make time                                     # check if lib is fast
make install                                  # copy libs to install dir
其中需要注意的就是配置参数,如果想生成动态链接库,使用下面的命令配置:

../configure -b 64 -D c -DPentiumCPS=2400 -Fa alg -fPIC \   # configure command
    --prefix=/home/whaley/lib/atlas \           # install dir
    --with-netlib-lapack-tarfile=/home/whaley/dload/lapack-3.4.1.tgz  #lapack所在的目录
至此基本就结束了,如果遇到问题可以继续讨论。









  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
安装BLASLAPACK,您可以按照以下步骤进行操作: 1. 首先,确保您的系统中已经安装了C和Fortran编译器。这些编译器对于编译BLASLAPACK库是必需的。 2. 下载BLAS库。您可以从官方网站或其他可靠的资源下载BLAS库的源代码。 3. 解压下载的BLAS源代码文件。 4. 进入解压后的BLAS目录,并打开Makefile文件。 5. 在Makefile文件中,根据您的系统配置,可能需要进行一些编辑。确保设置正确的编译器和编译选项。例如,您可能需要设置正确的编译器路径、优化标志等。 6. 执行以下命令编译和安装BLAS库: ``` make make PREFIX=/path/to/installation install ``` 将 "/path/to/installation" 替换为您希望安装BLAS库的路径。 7. 下载LAPACK库。您可以从官方网站或其他可靠的资源下载LAPACK库的源代码。 8. 解压下载的LAPACK源代码文件。 9. 进入解压后的LAPACK目录,并打开make.inc文件。 10. 在make.inc文件中,根据您的系统配置,可能需要进行一些编辑。确保设置正确的编译器和编译选项。例如,您可能需要设置正确的编译器路径、优化标志等。 11. 执行以下命令编译和安装LAPACK库: ``` make make PREFIX=/path/to/installation install ``` 将 "/path/to/installation" 替换为您希望安装LAPACK库的路径。 安装完成后,您就可以在您的C或Fortran项目中使用BLASLAPACK库了。请注意,上述步骤是基本的安装过程,具体步骤可能因您的系统配置和要求而有所不同。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值