如何从零开始在ubuntu上安装hpcc或者hpl

由于安装hpl与hpcc的过程是类似的,所以这里只介绍如何安装hpcc

文章目录

      • 一、在ubuntu上安装mpi
      • 二、在ubuntu上安装 blas、cblas以及lapack
      • 三、安装运行hpcc

一、在ubuntu上安装mpi

  1. 首先是下载mpi的源文件:

    http://www.mpich.org/static/downloads/

    下载最新版的mpich就可以了

  2. 解压并安装

    tar zxvf mpich-3.3rc1.tar.gz #这里我用的是mpich-3.3
    cd mpich-3.3rc1
    sudo ./configure -prefix=/usr/local/mpich #这个会运行一段时间
    sudo make && sudo make install #这条指令以及上一条指令是安装时常用的一套指令
    #其中prefix用来指定安装的路径,这样就可以将安装后的所有文件都放到同一个目录下了
    
  3. 配置环境变量

    sudo vim .bashrc  #注意要到主目录中使用
    

    在 .bashrc 文件的末尾添加

    export PATH=/usr/local/mpich/bin:$PATH
    

    然后更新配置文件

    sudo source .bashrc
    
  4. 检查是否安装成功

    随意编写一个hello world文件,然后用mpicc进行编译,生成输出文件 a.out

    然后调用

    mpirun -np 4 ./a.out
    

    进行调用,可以看到输出了四次,表示安装成功

    如何从零开始在ubuntu上安装hpcc或者hpl_第1张图片

二、在ubuntu上安装 blas、cblas以及lapack

  1. 下载源文件:

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

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

    http://www.netlib.org/lapack/lapack-3.8.0.tar.gz)

  2. 解压并安装:

    1. 安装blas:

      进入解压目录后运行

      sudo make
      sudo cp blas.LINUX.a /usr/local/lib 
      
    2. 安装cblas:

      进入解压目录后

      修改Makefile.in的内容(因为安装cblas需要用到blas,所以要修改blas的路径)

      保存退出后运行:

      sudo make
      sudo cp cblas.LINUX.a /usr/local/lib
      
    3. 安装lapack:

      进入解压目录之后

      将make.inc.example复制为make.inc(不然会提示找不到文件)

      修改make.inc的内容(需要用到blas以及cblas)

      如何从零开始在ubuntu上安装hpcc或者hpl_第2张图片

      保存退出后运行:

      sudo make
      sudo cp *.a /usr/local/lib
      

    安装成功!!!

    三、安装运行hpcc

    ​ 总算是进入到正题了,前面安装的东西在这里都会用到

    1. 首先是下载hpcc源码

      https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/hpcc/1.5.0-1/hpcc_1.5.0.orig.tar.gz

    2. 解压之后进入hpcc文件夹,然后进入hpl/setup文件夹,从中复制 Make.Linux_PII_CBLAS 到上一级(也就是 hpl )文件夹中,并将其改名为 Make.name

    3. 修改Make.name中一下位置中的内容

      对应之前安装的mpich以及blas、cblas的位置

    4. make 一下试试(注意是在hpcc目录下进行make)

      sudo make arch=name
      

      出现错误如下:

      在这里插入图片描述

      所以这是我没有安装g77导致的,由于现在安装g77特别麻烦,所以修改Make.name 如下:

      在这里插入图片描述

      再make 一下,出现如下错误

      在这里插入图片描述

      这类问题通常是因为编译时缺少flag导致的,建议通过谷歌搜索一下对应的flag是什么,百度不会给你答案的

      我遇到的几个对应的flag可以参考我的另一篇文章,也许可以免去你再次谷歌的麻烦

    5. 编译成功之后,会在hpcc目录出现hpcc的可执行文件,运行之前需要将_hpccinf.txt 改名为 hpccinf.txt 否则会出现如下错误

      在这里插入图片描述

      之后就可以通过以下方法进行使用了,其中 4 表示用4个线程进行调用

      sudo mpirun -np 4 ./hpcc
      

      其输出文件在hpccout.txt中,可以查看运行时间等(运行完成需要一定的时间,耐心等待)

希望对你有帮助

你可能感兴趣的:(hpc)