zoukankan      html  css  js  c++  java
  • 搭建Linpack

     环境:vmware workstation14 + centos7(linux基本都可以)

    一.开始安装mpich

    1. 解决依赖gcc gcc-gfortran

                sudo yum install gcc

                sudo yum install gcc-gfortran

    2.下载MPICH2,这是个并行计算的软件,可以到http://www.mcs.anl.gov/research/projects/mpich2/downloads/index.php?s=downloads下载最新的源码包

    我的下载http://www.mpich.org/static/downloads/3.2.1/mpich-3.2.1.tar.gz

    3.

    mkdir ~/linpack   ##目的是把linpack安装文件放到一起

    tar -zvfx mpich-3.2.1.tar.gz##进入含有该包的目录

    mv mpich-3.2.1.tar.gz ~/linpack

    mkdir ~/mpich-install ##安装mpich的准备目录,确保为空

    cd ~/linpack/mpich-3.2.1

    ./configure --prefix=/home/liubiyongge/mpich-install 2>&1 | tee c.txt ##liubiyongge该你自己用户名

    make 2>&1 | tee m.txt

    This step should succeed if there were no problems with the

        preceding step. Check file m.txt. If there were problems, do a

    "make clean" and then run make again with V=1.

    make V=1 2>&1 | tee m.txt

    make install 2>&1 | tee m.txt

    查看mpich-install中生成文件,如果没有进入mpich-3.2.1,

         make clean 重复./coonfigure之后动作

    PATH=/home/[USERNAME]/mpich-install/bin:$PATH ; export PATH

    #把这个路径加入到path

    which mpicc

    which mpiexec

    看是否加入成功

    若能出现正确路径名称,这说明安装成功。(注意!直接在Terminal中添加PATH路径会出现一个小问题,就是计算机重启后要重新添加路径,不然mpicc和mpiexec无法执行。)

    在安装包中,官方还给出了一个例子供我们测试,都已经编译好了,在/mpich-3.2.1/examples目录下,编译后的文件名称为cpi,是并行计算ππ的值。将目录切换到examples目录下,并运行代码:

    cd examples

    mpiexec -n 5 ./cpi

    得到的结果如下所示: 

     

    .

    下载GotoBLAS2-1.13.tar.gz

    https://www.tacc.utexas.edu/documents/1084364/1087496/GotoBLAS2-1.13.tar.gz/b58aeb8c-9d8d-4ec2-b5f1-5a5843b4d47b

    tar -zxvf GotoBLAS2-1.13.tar.gz ##进入含有该包的目录

    mv GotoBLAS2 ~/libnpack

    cd  ~/linpack/GotoBLAS2

    GotoBLAS2目录里的f_check源码有问题,把它的第298行改为:

    print MAKEFILE "FEXTRALIB=$linker_L -lgfortran -lm -lquadmath -lm $linker_a ";

     

    make BINARY=64 TARGET=NEHALEM #注意此时PC要保持联网,会自动下载Lapack

    三.下载hpl

    http://www.netlib.org/benchmark/hpl/ 

    tar -zxvf hpl-2.2.tar.gz 

    mv hpl-2.2 ~/linpack/

    cd ~/linpack/hpl-2.2

    然后进入hpl-2.2顶层目录的目录,将setup里面的Make.Linux_PII_FBLAS复制到hpl目录,然后编辑Make.Linux_PII_FBLAS。

    改动如下

    :TOPdir       = /home/liubiyongge/linpack/hpl-2.2 ##liubiyongg改为你用户名这个是为了指明hpl-2.2位置

    MPdir        = /home/liubiyongge/mpich-install 

    ##指明mpich安装目录

    MPinc        = -I$(MPdir)/include

    MPlib        = $(MPdir)/lib/libmpi.so

    ##这个改是因为源目录中没有libmpich.a 改为libmpi.so

    LAdir        = /home/liubiyongge/linpack/GotoBLAS2

    LAinc        =

    LAlib        = $(LAdir)/libgoto2.a $(LAdir)/libgoto2.so

    同上

    CC           = /home/liubiyongge/mpich-install/bin/mpicc

    #改编译器为mpicc

    LINKER       = /home/liubiyongge/mpich-install/bin/mpif77

    #改编译器为mpif77

    make  arch=Linux_PII_FBLAS

    如果没问题,在hpl/bin/中会生成一个Linux_PII_FBLAS文件夹,如果有错,那么应该是你的arch没有改对吧,实在不行就联系我,liubiyongge@163.com

     

  • 相关阅读:
    activity学习参考
    Activity工作流入门
    Mysql 命令查看函数,触发器。。
    本地redis下载并启动
    Could not initialize class com.taobao.diamond.client.impl.DiamondEnvRepo
    mysql把表(表已有数据)的某列属性由空到非空,以及常用列操作
    easyexcel导出两种方式response返回文件流下载和保存到服务器返回下载链接
    EasyExcel导出带下拉框,并解决导出之后打开总是显示发现不可读取内容
    el-table的fixed固定列属性导致数据错位
    el-input按回车时,解决同时触发回车和失焦事件的问题
  • 原文地址:https://www.cnblogs.com/liubiyonge/p/9159875.html
Copyright © 2011-2022 走看看