美文网首页
intel下的deepbench配合

intel下的deepbench配合

作者: 雪梅弱水 | 来源:发表于2018-01-03 20:53 被阅读0次

    0.deepbench软件包下载

    deepbench的软件包可以在https://github.com/baidu-research/DeepBench进行下载。

    1.配置相应的环境

    需要的环境包括icc、mkl、mpi、mlsl,其中mkl、mpi如果没有可以在intel的官网https://software.intel.com/en-us/performance-libraries进行下载,对于mlsl则需要在https://github.com/intel/MLSL/releases进行下载,对于icc系统一般都是有的不需要下载。

    我操作的平台中

    icc所在路径为/opt/intel/compilers_and_libraries_2018.1.163/linux/bin/compilervars.sh

    mkl所在路径为/opt/intel/compilers_and_libraries_2018.1.163/linux/mkl/bin/mklvars.sh

    mpi所在路径为/opt/intel/compilers_and_libraries_2018.1.163/linux/mpi/intel64/bin/mpivars.sh

    mlsl所在路径为/opt/intel/mlsl_2017.2.018/intel64/bin/mlslvars.sh

    相应的命令行语句如下:

    source /opt/intel/compilers_and_libraries_2018.1.163/linux/bin/compilervars.sh intel64

    source /opt/intel/compilers_and_libraries_2018.1.163/linux/mkl/bin/mklvars.sh intel64

     source /opt/intel/compilers_and_libraries_2018.1.163/linux/mpi/intel64/bin/mpivars.sh intel64

    source /opt/intel/mlsl_2017.2.018/intel64/bin/mlslvars.sh

    2.运行spemm

    首先进入下载的deepbench目录下进入到code/intel/sgemm/,然后直接使用make就好

    make

    make完成之后会出现可执行程序spmm_bench,然后直接运行即可

    ./spmm_bench

    程序运行得到如下结果:

    3.运行Intel GEMM benchmark

    如同步骤2一样先进入/code/intel/gemm/文件夹中,直接使用make命令得到的是文件夹中关于bench.cpp的运行文件,不过一样是可以运行。但是如果要编译运行run_mkl_sgemm_ia.sh的话则需要用sh命令语句而不能直接用./因为用./会出现权限不够的报错,具体命令语句如下:

    编译运行bench.cpp

    make

    ./sbench

    编译运行run_mkl_sgemm_ia.sh

    sh run_mkl_sgemm_ia.sh

    最后的运行截图如下:

    4.运行conv

    首先需要进入code/intel/convolution/mkl_conv/文件夹中然后使用make命令,将得要一个std_conv_bench 运行文件,直接运行便可以。

    make

    ./std_conv_bench

    运行截图如下:

    5.运行all_reduce

    其all_reduce的运行是需要进入/code/osu_allreduce文件夹中,对于allreduce的运行是需要修改一下路径。路径的修改需要在Makefile_ia进行修改,需要添加MPI_PATH与MLSL_PATH的路径。

    首先进入Makefile_ia文件

    vin Makefile_ia

    找到MPI_PATH  ?= $(I_MPI_ROOT)与MLSL_PATH ?= $(MLSL_ROOT)这两条语句。因为我所操作平台mpi所在路径   /opt/intel/compilers_and_libraries_2018.1.163/linux/mpi/intel64/bin/mpivars.sh intel64

    mlsl所在路径为/opt/intel/mlsl_2017.2.018/intel64/bin/mlslvars.sh

    所以我将上面两条语句跟换为如下两句:

    MPI_PATH = /opt/intel/compilers_and_libraries_2018.1.163/linux/mpi

    MLSL_PATH = /opt/intel/mlsl_2017.2.018

    更改完成之后保存退出,然后在使用makefile,具体命令语句如下:

    make -f Makefile_ia all

    makefile之后便会得到一个bin文件夹,然后进入bin文件目录中去,运行osu_allreduce这个运行文件,具体命令语句如下:

    mpiexec -n 4 ./osu_allreduce

    运行结果如下:

    相关文章

      网友评论

          本文标题:intel下的deepbench配合

          本文链接:https://www.haomeiwen.com/subject/mzmhnxtx.html