共 71 个文件变更+375-202
| @@ -17,11 +17,10 @@ HPC被喻为是IT行业“金字塔上的明珠”,其部署、编译、运行 | |||
| 17 | 17 | ||
| 18 | ## 下载贾维斯 | 18 | ## 下载贾维斯 |
| 19 | 19 | ||
| 20 | -执行如下命令安装相关依赖并下载贾维斯 | 20 | +执行如下命令下载贾维斯 |
| 21 | 21 | ||
| 22 | ``` | 22 | ``` |
| 23 | -yum -y install git time zlib zlib-devel gcc gcc-c++ environment-modules python python3 python3-devel python3-libs python3-pip cmake make numactl numactl-devel numactl-libs rpmdevtools wget libtirpc libtirpc-devel unzip flex tar patch glibc-devel rpcbind csh perl-XML-LibXML xorg-x11-xauth curl curl-devel libcurl-devel | 23 | +git clone https://gitcode.com/openeuler/hpcrunner.git |
| 24 | -git clone https://gitee.com/openeuler/hpcrunner.git | ||
| 25 | ``` | 24 | ``` |
| 26 | 25 | ||
| 27 | ## 贾维斯目录结构 | 26 | ## 贾维斯目录结构 |
| @@ -44,50 +43,47 @@ git clone https://gitee.com/openeuler/hpcrunner.git | |||
| 44 | 43 | ||
| 45 | ## 使用贾维斯安装应用流程 | 44 | ## 使用贾维斯安装应用流程 |
| 46 | 45 | ||
| 47 | -以安装 xapp 为例: | 46 | +以安装某应用(xapp) 为例: |
| 48 | 47 | ||
| 49 | -步骤1:配置网络代理 | 48 | +步骤1:(可选)配置git代理 |
| 49 | +执行proxy脚本,并选择合适的git源 | ||
| 50 | 50 | ||
| 51 | ``` | 51 | ``` |
| 52 | -#执行proxy脚本,并选择合适的源 | ||
| 53 | ./proxy.sh | 52 | ./proxy.sh |
| 54 | -#执行初始化脚本,完成环境变量配置 | 53 | +``` |
| 54 | + | ||
| 55 | +步骤2:初始环境变量,并检查环境 | ||
| 56 | +执行初始化脚本,同步检查配置环境并下载安装基础依赖,<font color="red">‌**确保初始化成功,无ERROR回显再继续执行** | ||
| 57 | +‌</font> | ||
| 58 | + | ||
| 59 | +``` | ||
| 55 | source init.sh | 60 | source init.sh |
| 56 | ``` | 61 | ``` |
| 57 | 62 | ||
| 58 | -步骤2:部署基础环境(目前仅支持HPCKit) | 63 | +步骤3:生效应用模板 |
| 59 | - | ||
| 60 | -``` | ||
| 61 | -#生效HPCKit安装模板 | ||
| 62 | -./jarvis -use templates/basic_env/data.hpckit.config | ||
| 63 | -#执行以下命令,完成基础环境部署 | ||
| 64 | -./jarvis -dp | ||
| 65 | -``` | ||
| 66 | - | ||
| 67 | -步骤3:生效应用模板 | ||
| 68 | 进入hpcrunner根目录执行如下命令: | 64 | 进入hpcrunner根目录执行如下命令: |
| 69 | 65 | ||
| 70 | ``` | 66 | ``` |
| 71 | ./jarvis -use templates/xapp.config | 67 | ./jarvis -use templates/xapp.config |
| 72 | ``` | 68 | ``` |
| 73 | 69 | ||
| 74 | -注:贾维斯中包含典型HPC应用模板, 位于目录”hpcrunner/template”中,可直接使用。如要新增应用模板,需遵循一定的格式新建自定义文件app.config。 | 70 | +注:贾维斯中包含典型HPC应用模板, 位于目录”hpcrunner/template”中,可直接使用。 |
| 75 | - | 71 | +如要新增应用模板,需遵循一定的格式新建自定义文件app.config。 |
| 76 | 配置文件格式如下所示 | 72 | 配置文件格式如下所示 |
| 77 | 73 | ||
| 78 | -| **配置项** | **说明** | **示例** | | 74 | +| **配置项** | **说明** | **示例** | |
| 79 | -|--------------|-----------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------| | 75 | +|--------------|-----------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |
| 80 | -| [SERVER] | 指定节点列表,按行书写,用于自动生成hostfile | 11.11.11.11<br>22.22.22.22 | | 76 | +| [SERVER] | 指定节点列表,按行书写,用于自动生成hostfile | 11.11.11.11<br>22.22.22.22 | |
| 81 | -| [DOWNLOAD] | 格式:app/appversion download_url [alias]<br>**注:**在没有网络场景下,可提前将下载好的安装包放置在hpcrunner/downloads目录下 | cp2k/8.2 https://github.com/extdomains/github.com/cp2k/cp2k/releases/download/v8.2.0/cp2k-8.2.tar.bz2 | | 77 | +| [DOWNLOAD] | 格式:app/appversion download_url [alias]<br>**注:**在没有网络场景下,可提前将下载好的安装包放置在hpcrunner/downloads目录下 | cp2k/8.2 https://github.com/extdomains/github.com/cp2k/cp2k/releases/download/v8.2.0/cp2k-8.2.tar.bz2 | |
| 82 | -| [DEPENDENCY] | HPC应用所需安装的依赖软件 | ./jarvis -install gmp/6.2.0 clang<br>./jarvis -install boost/1.72.0 clang | | 78 | +| [DEPENDENCY] | HPC应用所需安装的依赖软件 | ./jarvis -install gmp/6.2.0 clang<br>./jarvis -install boost/1.72.0 clang | |
| 83 | -| [ENV] | HPC应用编译运行所需的环境配置 | module use ./software/modulefiles<br>module load bisheng/3.2.0<br>module load boost/1.72.0 | | 79 | +| [ENV] | HPC应用编译运行所需的环境配置 | module use ./software/modulefiles<br>module load bisheng/3.2.0<br>module load boost/1.72.0 | |
| 84 | -| [APP] | HPC应用信息,包括应用名、构建路径、二进制路径、算例路径 | app_name = CP2K <br>build_dir = /home/cp2k-8.2/ <br>binary_dir = /home/CP2K/cp2k-8.2/bin/ case_dir = /home/CP2K/cp2k-8.2/benchmarks/QS/ | | 80 | +| [APP] | HPC应用信息,包括应用名、构建路径、二进制路径、算例路径 | app_name = CP2K <br>build_dir = $JARVIS_ROOT/tmp/cp2k-8.2/ <br>binary_dir = $JARVIS_ROOT/software/apps/bisheng${BISHENG_VERSION}-hmpi${HPCKIT_VERSION}/cp2k-8.2/bin/ <br>case_dir = $JARVIS_ROOT/workloads/cp2k-8.2/benchmarks/QS/ | |
| 85 | -| [BUILD] | HPC应用构建脚本 | ./configure <br>make -j<br>make install | | 81 | +| [BUILD] | HPC应用构建脚本 | ./configure <br>make -j<br>make install | |
| 86 | -| [CLEAN] | HPC应用编译清理脚本 | make clean | | 82 | +| [CLEAN] | HPC应用编译清理脚本 | make clean | |
| 87 | -| [RUN] | HPC应用运行配置,包括前置命令、应用命令和节点个数 | run = mpirun -np 2 <br>binary = cp2k.psmp H2O-256.inp <br>nodes = 1 | | 83 | +| [RUN] | HPC应用运行配置,包括前置命令、应用命令和节点个数 | run = mpirun -np 2 <br>binary = cp2k.psmp H2O-256.inp <br>nodes = 1 | |
| 88 | -| [JOB] | HPC应用作业调度运行配置 | 多瑙作业调度脚本 | | 84 | +| [JOB] | HPC应用作业调度运行配置 | 多瑙作业调度脚本 | |
| 89 | -| [BATCH] | HPC应用批量运行命令**** | #!/bin/bash <br>mpirun -np 2 cp2k.psmp H2O-256.inp mpirun -np 2 cp2k.psmp H2O-512.inp | | 85 | +| [BATCH] | HPC应用批量运行命令 | #!/bin/bash <br>mpirun -np 2 cp2k.psmp H2O-256.inp mpirun -np 2 cp2k.psmp H2O-512.inp | |
| 90 | -| [PERF] | 性能分析采集工具额外参数配置 | perf= -o <br>nsys= <br>ncu=--target-processes all --launch-skip 71434 --launch-count 1 | | 86 | +| [PERF] | 性能分析采集工具额外参数配置 | perf= -o <br>nsys= <br>ncu=--target-processes all --launch-skip 71434 --launch-count 1 | |
| 91 | 87 | ||
| 92 | 步骤4:下载安装包以及相关依赖 | 88 | 步骤4:下载安装包以及相关依赖 |
| 93 | 89 | ||
| @@ -115,11 +111,11 @@ source init.sh | |||
| 115 | 111 | ||
| 116 | ## 运行示例 | 112 | ## 运行示例 |
| 117 | 113 | ||
| 118 | -使用默认的应用配置部署运行应用QE-6.4 | 114 | +使用默认的应用配置部署运行应用QE-7.3 |
| 119 | 115 | ||
| 120 | ``` | 116 | ``` |
| 121 | source init.sh | 117 | source init.sh |
| 122 | -./jarvis -use data.config | 118 | +./jarvis -use templates/qe/7.3/data.qe.arm.cpu.sve.clang.config |
| 123 | ./jarvis -d | 119 | ./jarvis -d |
| 124 | ./jarvis -dp | 120 | ./jarvis -dp |
| 125 | ./jarvis -b | 121 | ./jarvis -b |
| @@ -130,26 +126,26 @@ source init.sh | |||
| 130 | 126 | ||
| 131 | ## 功能指令介绍 | 127 | ## 功能指令介绍 |
| 132 | 128 | ||
| 133 | -| **功能** | **命令** | **示例/说明** | | 129 | +| **功能** | **命令** | **示例/说明** | |
| 134 | -|-----------------------|----------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 130 | +|-----------------------|----------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |
| 135 | -| 帮助信息 | ./jarvis -h | | | 131 | +| 帮助信息 | ./jarvis -h | | |
| 136 | -| 生效应用模板 | ./jarvis -use /path/app.config | 由高到低,模板使用优先级顺序:<br>1.通过环境变量JARVIS_CONFIG指定模板, 支持多用户并行使用贾维斯。<br>export JARVIS_CONFIG=/path/app.config<br>2.通过命令”./jarvis -use /path/app.config”指定模板。<br>3.贾维斯根目录下默认模板data.config。 | | 132 | +| 生效应用模板 | ./jarvis -use /path/app.config | 由高到低,模板使用优先级顺序:<br>1.通过环境变量JARVIS_CONFIG指定模板, 支持多用户并行使用贾维斯。<br>export JARVIS_CONFIG=/path/app.config<br>2.通过命令”./jarvis -use /path/app.config”指定模板。<br>3.贾维斯根目录下默认模板data.config。 | |
| 137 | -| 一键下载HPC应用 | ./jarvis -d | 应用将自动下载[DOWNLOAD]中指定的安装包到downloads目录。<br>**注:**在没有网络场景下,可提前将下载好的安装包放置到downloads目录下 | | 133 | +| 一键下载HPC应用 | ./jarvis -d | 应用将自动下载[DOWNLOAD]中指定的安装包到downloads目录。<br>**注:**在没有网络场景下,可提前将下载好的安装包放置到downloads目录下 | |
| 138 | -| 安装依赖 | ./jarvis -install [package/][name/version/other] [option] | 支持安装的软件清单位于package目录下,可在package目录下获取[name/version/other]各字段信息,精确到”install.sh”的上一层目录<br>各参数具体含义:<br>package:可选<br>name:软件名<br>version:软件版本<br>other:子版本,”install.sh”的上一层目录<br>option:指定依赖的编译工具,支持的选项如下表<br>示例如下:<br>1. 安装编译器<br>./jarvis -install hpckit/x.x.x any<br>module use xxx<br>module load bisheng/xxx<br>2. 安装mpi<br>./jarvis -install hpckit/x.x.x any<br>module use xxx<br>module load hmpi/xxx<br>3. 安装依赖<br>module use software/module*<br>module load bisheng/x.x.x<br>module load hmpi/x.x.x<br>export CC=mpicc CXX=mpicxx FC=mpifort <br>./jarvis -install hdf5/1.8.20/clang bisheng+mpi<br>4. 安装工具<br>./jarvis -install hpckit/2025.3.30 any<br>./jarvis -install go/1.18 any | | 134 | +| 安装依赖 | ./jarvis -install [package/][name/version/other] [option] | 支持安装的软件清单位于package目录下,可在package目录下获取[name/version/other]各字段信息,精确到”install.sh”的上一层目录<br>各参数具体含义:<br>package:可选<br>name:软件名<br>version:软件版本<br>other:子版本,”install.sh”的上一层目录<br>option:指定依赖的编译工具,支持的选项如下表<br>示例如下:<br>1. 安装编译器<br>./jarvis -install hpckit/x.x.x any<br>module use xxx<br>module load bisheng/xxx<br>2. 安装mpi<br>./jarvis -install hpckit/x.x.x any<br>module use xxx<br>module load hmpi/xxx<br>3. 安装依赖<br>module use software/module*<br>module load bisheng/x.x.x<br>module load hmpi/x.x.x<br>export CC=mpicc CXX=mpicxx FC=mpifort <br>./jarvis -install hdf5/1.8.20/clang bisheng+mpi<br>4. 安装工具<br>./jarvis -install hpckit/2025.3.30 any<br>./jarvis -install go/1.18 any <br>5.自定义安装目录 <br>./jarvis -install hpckit/25.1.0 any --prefix=/path/to/software | |
| 139 | -| 一键卸载依赖 | ./jarvis -remove xxx | 支持模糊查询 ./jarvis -remove openblas/0.3.18 | | 135 | +| 一键卸载依赖 | ./jarvis -remove xxx | 支持模糊查询 ./jarvis -remove openblas/0.3.18 | |
| 140 | -| 一键下载并安装所有依赖 | ./jarvis -dp | 需要提前指定应用模板./jarvis -use app.config<br>读取配置文件中的[DEPENDENCY]字段内容并按顺序执行 | | 136 | +| 一键下载并安装所有依赖 | ./jarvis -dp | 需要提前指定应用模板./jarvis -use app.config<br>读取配置文件中的[DEPENDENCY]字段内容并按顺序执行 | |
| 141 | -| 输出已安装的软件清单 | ./jarvis -l | 输出清单以相对路径列出 | | 137 | +| 输出已安装的软件清单 | ./jarvis -l | 输出清单以相对路径列出 | |
| 142 | -| 查询已安装的软件 | ./jarvis -f xxx | 查询openblas安装路径 ./jarvis -f openblas | | 138 | +| 查询已安装的软件 | ./jarvis -f xxx | 查询openblas安装路径 ./jarvis -f openblas | |
| 143 | -| 一键生成环境变量 | ./jarvis -e | 读取配置文件中的[ENV]字段内容并生成env.sh脚本,执行./jarvis -b或./jarvis -r会自动生成并生效 | | 139 | +| 一键生成环境变量 | ./jarvis -e | 读取配置文件中的[ENV]字段内容并生成env.sh脚本,执行./jarvis -b或./jarvis -r会自动生成并生效 | |
| 144 | -| 一键编译 | ./jarvis -b | 自动进入[APP]字段中的build_dir目录,读取配置文件中的[BUILD]字段内容并生成build.sh脚本执行 | | 140 | +| 一键编译 | ./jarvis -b | 自动进入[APP]字段中的build_dir目录,读取配置文件中的[BUILD]字段内容并生成build.sh脚本执行 | |
| 145 | -| 一键运行 | ./jarvis -r | 自动进入[APP]字段中的case_dir目录,读取配置文件中的[RUN]字段下内容并组装生成run.sh脚本执行 | | 141 | +| 一键运行 | ./jarvis -r | 自动进入[APP]字段中的case_dir目录,读取配置文件中的[RUN]字段下内容并组装生成run.sh脚本执行 | |
| 146 | -| 一键运行 | ./jarvis -rb | 自动进入[APP]字段中的case_dir目录,读取配置文件中的[BATCH]字段下内容并直接生成batch_run.sh脚本执行 | | 142 | +| 一键运行 | ./jarvis -rb | 自动进入[APP]字段中的case_dir目录,读取配置文件中的[BATCH]字段下内容并直接生成batch_run.sh脚本执行 | |
| 147 | -| 一键CPU性能采集 | ./jarvis -p | 读取配置文件中的[PERF]字段下的perf选项内容,然后使用perf工具进行采集信息 | | 143 | +| 一键CPU性能采集 | ./jarvis -p | 读取配置文件中的[PERF]字段下的perf选项内容,然后使用perf工具进行采集信息 | |
| 148 | -| 一键GPU性能采集 | ./jarvis -gp | 读取配置文件中的[PERF]字段下的nsys选项内容,然后使用nsys工具进行采集信息 | | 144 | +| 一键GPU性能采集 | ./jarvis -gp | 读取配置文件中的[PERF]字段下的nsys选项内容,然后使用nsys工具进行采集信息 | |
| 149 | -| 一键输出服务器信息 | ./jarvis -i | 输出CPU、网卡、OS、内存等信息 | | 145 | +| 一键输出服务器信息 | ./jarvis -i | 输出CPU、网卡、OS、内存等信息 | |
| 150 | -| 一键评测服务器性能 | ./jarvis -bench all ./jarvis -bench mpi ./jarvis -bench omp ./jarvis -bench gemm | 包括HPL、Stream、MPI、OMP、P2P等评测benchmark支持清单位于目录“hpcrunner/benchmark” | | 146 | +| 一键评测服务器性能 | ./jarvis -bench all ./jarvis -bench mpi ./jarvis -bench omp ./jarvis -bench gemm | 包括HPL、Stream、MPI、OMP、P2P等评测benchmark支持清单位于目录“hpcrunner/benchmark” | |
| 151 | -| 一键生成Singularity容器定义文件 | ./jarvis -container docker-hub-address | 需要事先指定应用配置./jarvis -use data.config <br>参数"docker-hub-address"指定基础镜像<br>示例:./jarvis -container openeuler/openeuler | | 147 | +| 一键生成Singularity容器定义文件 | ./jarvis -container docker-hub-address | 需要事先指定应用配置./jarvis -use data.config <br>参数"docker-hub-address"指定基础镜像<br>示例:./jarvis -container openeuler/openeuler | |
| 152 | -| 更新依赖库的路径 | ./jarvis -u | 如果移动了贾维斯的路径,将自动更新software/modulefiles的路径 | | 148 | +| 更新依赖库的路径 | ./jarvis -u | 如果移动了贾维斯的路径,将自动更新software/modulefiles的路径 | |
| 153 | 149 | ||
| 154 | ## option介绍 | 150 | ## option介绍 |
| 155 | 151 | ||
| @@ -30,7 +30,7 @@ | |||
| 30 | 30 | ||
| 31 | # **代码合入指导** | 31 | # **代码合入指导** |
| 32 | 32 | ||
| 33 | -## **GITEE提交前提工作** | 33 | +## **AtomGit提交前提工作** |
| 34 | 34 | ||
| 35 | **1.设置SSH** | 35 | **1.设置SSH** |
| 36 | 36 | ||
| @@ -40,7 +40,7 @@ | |||
| 40 | 40 | ||
| 41 | cat id_rsa.pub | 41 | cat id_rsa.pub |
| 42 | 42 | ||
| 43 | - 复制内容到Gitee-设置-SSH Key里面 | 43 | + 复制内容到AtomGit-设置-SSH Key里面 |
| 44 | 44 | ||
| 45 | **2.设置用户名和密码** | 45 | **2.设置用户名和密码** |
| 46 | 46 | ||
| @@ -54,11 +54,11 @@ | |||
| 54 | 54 | ||
| 55 | **3.Fork主仓库,克隆个人分支(以iotwins为例,以实际的为主)** | 55 | **3.Fork主仓库,克隆个人分支(以iotwins为例,以实际的为主)** |
| 56 | 56 | ||
| 57 | - git clone git@gitee.com:iotwins/hpcrunner.git | 57 | + git clone git@gitcode.com:iotwins/hpcrunner.git |
| 58 | 58 | ||
| 59 | **4.建立个人仓库和远程主仓库的联系** | 59 | **4.建立个人仓库和远程主仓库的联系** |
| 60 | 60 | ||
| 61 | -git remote add upstream git@gitee.com:openeuler/hpcrunner.git | 61 | +git remote add upstream git@gitcode.com:iotwins/hpcrunner.git |
| 62 | 62 | ||
| 63 | 63 | ||
| 64 | 64 | ||
| @@ -84,9 +84,9 @@ git commit --no-verif -m "Add XXX function" | |||
| 84 | 84 | ||
| 85 | git push origin new_branch | 85 | git push origin new_branch |
| 86 | 86 | ||
| 87 | -**5.在gitee创建PR** | 87 | +**5.在AtomGit创建PR** |
| 88 | 88 | ||
| 89 | -https://gitee.com/iotwins/hpcrunner | 89 | +https://atomgit.com/iotwins/hpcrunner |
| 90 | 90 | ||
| 91 | 91 | ||
| 92 | ## **FAQ** | 92 | ## **FAQ** |
| @@ -14,7 +14,7 @@ From: openeuler/openeuler | |||
| 14 | yum install -y gcc gcc-c++ make cmake automake zlib-devel bzip2-devel xz-devel curl-devel openssl-devel | 14 | yum install -y gcc gcc-c++ make cmake automake zlib-devel bzip2-devel xz-devel curl-devel openssl-devel |
| 15 | source /etc/profile || true | 15 | source /etc/profile || true |
| 16 | git config --global http.sslVerify false | 16 | git config --global http.sslVerify false |
| 17 | - git clone https://gitee.com/openeuler/hpcrunner.git | 17 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 18 | cd hpcrunner | 18 | cd hpcrunner |
| 19 | source ./init.sh | 19 | source ./init.sh |
| 20 | ./jarvis -i | 20 | ./jarvis -i |
| @@ -13,7 +13,7 @@ From: openeuler/openeuler | |||
| 13 | yum install -y gcc gcc-c++ make cmake libgfortran automake zlib-devel bzip2-devel xz-devel curl-devel openssl-devel | 13 | yum install -y gcc gcc-c++ make cmake libgfortran automake zlib-devel bzip2-devel xz-devel curl-devel openssl-devel |
| 14 | source /etc/profile || true | 14 | source /etc/profile || true |
| 15 | git config --global http.sslVerify false | 15 | git config --global http.sslVerify false |
| 16 | - git clone https://gitee.com/openeuler/hpcrunner.git | 16 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 17 | cd hpcrunner | 17 | cd hpcrunner |
| 18 | source ./init.sh | 18 | source ./init.sh |
| 19 | ./jarvis -i | 19 | ./jarvis -i |
| @@ -12,7 +12,7 @@ From: openeuler/openeuler | |||
| 12 | # Install the necessary development environment | 12 | # Install the necessary development environment |
| 13 | source /etc/profile || true | 13 | source /etc/profile || true |
| 14 | git config --global http.sslVerify false | 14 | git config --global http.sslVerify false |
| 15 | - git clone https://gitee.com/openeuler/hpcrunner | 15 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 16 | cd hpcrunner | 16 | cd hpcrunner |
| 17 | source ./init.sh | 17 | source ./init.sh |
| 18 | ./jarvis -i | 18 | ./jarvis -i |
| @@ -14,7 +14,7 @@ From: openeuler/openeuler | |||
| 14 | yum install -y gcc gcc-c++ gcc-gfortran glibc-devel make libgfortran | 14 | yum install -y gcc gcc-c++ gcc-gfortran glibc-devel make libgfortran |
| 15 | source /etc/profile || true | 15 | source /etc/profile || true |
| 16 | git config --global http.sslVerify false | 16 | git config --global http.sslVerify false |
| 17 | - git clone https://gitee.com/openeuler/hpcrunner.git | 17 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 18 | cd hpcrunner | 18 | cd hpcrunner |
| 19 | source ./init.sh | 19 | source ./init.sh |
| 20 | ./jarvis -i | 20 | ./jarvis -i |
| @@ -12,7 +12,7 @@ From: openeuler/openeuler | |||
| 12 | # Install the necessary development environment | 12 | # Install the necessary development environment |
| 13 | source /etc/profile || true | 13 | source /etc/profile || true |
| 14 | git config --global http.sslVerify false | 14 | git config --global http.sslVerify false |
| 15 | - git clone https://gitee.com/openeuler/hpcrunner | 15 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 16 | cd hpcrunner | 16 | cd hpcrunner |
| 17 | source ./init.sh | 17 | source ./init.sh |
| 18 | ./jarvis -i | 18 | ./jarvis -i |
| @@ -13,7 +13,7 @@ From: openeuler/openeuler | |||
| 13 | yum install -y environment-modules git wget unzip make flex tar | 13 | yum install -y environment-modules git wget unzip make flex tar |
| 14 | source /etc/profile || true | 14 | source /etc/profile || true |
| 15 | git config --global http.sslVerify false | 15 | git config --global http.sslVerify false |
| 16 | - git clone https://gitee.com/openeuler/hpcrunner | 16 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 17 | cd hpcrunner | 17 | cd hpcrunner |
| 18 | source ./init.sh | 18 | source ./init.sh |
| 19 | ./jarvis -i | 19 | ./jarvis -i |
| @@ -42,7 +42,7 @@ From: centos:8.2.2004 | |||
| 42 | yum install -y tcsh tcl lsof tk bc | 42 | yum install -y tcsh tcl lsof tk bc |
| 43 | source /etc/profile || true | 43 | source /etc/profile || true |
| 44 | git config --global http.sslVerify false | 44 | git config --global http.sslVerify false |
| 45 | - git clone https://gitee.com/openeuler/hpcrunner | 45 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 46 | cd hpcrunner | 46 | cd hpcrunner |
| 47 | source ./init.sh | 47 | source ./init.sh |
| 48 | # add your personal files here | 48 | # add your personal files here |
| @@ -15,7 +15,7 @@ From: openeuler/openeuler:20.03 | |||
| 15 | yum install -y tcsh tcl lsof tk bc | 15 | yum install -y tcsh tcl lsof tk bc |
| 16 | source /etc/profile || true | 16 | source /etc/profile || true |
| 17 | git config --global http.sslVerify false | 17 | git config --global http.sslVerify false |
| 18 | - git clone https://gitee.com/openeuler/hpcrunner | 18 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 19 | cd hpcrunner | 19 | cd hpcrunner |
| 20 | source ./init.sh | 20 | source ./init.sh |
| 21 | # add your personal files here | 21 | # add your personal files here |
| @@ -19,7 +19,7 @@ From: openeuler/openeuler:22.03-lts-sp2 | |||
| 19 | git config --global http.sslVerify false | 19 | git config --global http.sslVerify false |
| 20 | git config --global user.name 'chenshaoheng' | 20 | git config --global user.name 'chenshaoheng' |
| 21 | git config --global user.email 'chenshaoheng3@h-partners.com' | 21 | git config --global user.email 'chenshaoheng3@h-partners.com' |
| 22 | - git clone https://gitee.com/openeuler/hpcrunner.git | 22 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 23 | cd /hpcrunner | 23 | cd /hpcrunner |
| 24 | 24 | ||
| 25 | #install mlnx | 25 | #install mlnx |
| @@ -21,7 +21,7 @@ From: helloxusuo/repo/base:oe2203sp2 | |||
| 21 | git config --global http.sslVerify false | 21 | git config --global http.sslVerify false |
| 22 | git status | 22 | git status |
| 23 | 23 | ||
| 24 | - #git pull https://gitee.com/openeuler/hpcrunner | 24 | + #git pull https://atomgit.com/openeuler/hpcrunner.git |
| 25 | mkdir tmpppp | 25 | mkdir tmpppp |
| 26 | cd tmpppp | 26 | cd tmpppp |
| 27 | git clone -b container https://gitee.com/chenshaoheng/hpcrunner.git | 27 | git clone -b container https://gitee.com/chenshaoheng/hpcrunner.git |
| @@ -15,7 +15,7 @@ From: openeuler/openeuler:20.03 | |||
| 15 | yum install -y tcsh tcl lsof tk bc | 15 | yum install -y tcsh tcl lsof tk bc |
| 16 | source /etc/profile || true | 16 | source /etc/profile || true |
| 17 | git config --global http.sslVerify false | 17 | git config --global http.sslVerify false |
| 18 | - git clone https://gitee.com/openeuler/hpcrunner | 18 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 19 | cd hpcrunner | 19 | cd hpcrunner |
| 20 | source ./init.sh | 20 | source ./init.sh |
| 21 | # add your personal files here | 21 | # add your personal files here |
| @@ -15,7 +15,7 @@ From: openeuler/openeuler:20.03 | |||
| 15 | yum install -y tcsh tcl lsof tk bc | 15 | yum install -y tcsh tcl lsof tk bc |
| 16 | source /etc/profile || true | 16 | source /etc/profile || true |
| 17 | git config --global http.sslVerify false | 17 | git config --global http.sslVerify false |
| 18 | - git clone https://gitee.com/openeuler/hpcrunner | 18 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 19 | cd hpcrunner | 19 | cd hpcrunner |
| 20 | source ./init.sh | 20 | source ./init.sh |
| 21 | # add your personal files here | 21 | # add your personal files here |
| @@ -14,7 +14,7 @@ From: openeuler/openeuler:20.03 | |||
| 14 | yum install -y tcsh tcl lsof tk bc | 14 | yum install -y tcsh tcl lsof tk bc |
| 15 | source /etc/profile || true | 15 | source /etc/profile || true |
| 16 | git config --global http.sslVerify false | 16 | git config --global http.sslVerify false |
| 17 | - git clone https://gitee.com/openeuler/hpcrunner | 17 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 18 | cd hpcrunner | 18 | cd hpcrunner |
| 19 | source ./init.sh | 19 | source ./init.sh |
| 20 | # add your personal files here | 20 | # add your personal files here |
| @@ -22,7 +22,7 @@ From: helloxusuo/repo/base:oe2203sp2 | |||
| 22 | git config --global http.sslVerify false | 22 | git config --global http.sslVerify false |
| 23 | git status | 23 | git status |
| 24 | 24 | ||
| 25 | - git pull https://gitee.com/openeuler/hpcrunner | 25 | + git pull https://atomgit.com/openeuler/hpcrunner.git |
| 26 | cd ../ | 26 | cd ../ |
| 27 | mkdir linshi | 27 | mkdir linshi |
| 28 | cd linshi | 28 | cd linshi |
| @@ -22,7 +22,7 @@ From: helloxusuo/repo/base:oe2203sp2 | |||
| 22 | git config --global http.sslVerify false | 22 | git config --global http.sslVerify false |
| 23 | git status | 23 | git status |
| 24 | 24 | ||
| 25 | - git pull https://gitee.com/openeuler/hpcrunner | 25 | + git pull https://atomgit.com/openeuler/hpcrunner.git |
| 26 | cd ../ | 26 | cd ../ |
| 27 | mkdir linshi | 27 | mkdir linshi |
| 28 | cd linshi | 28 | cd linshi |
| @@ -19,7 +19,7 @@ From: helloxusuo/repo/base:oe2203sp2 | |||
| 19 | git init | 19 | git init |
| 20 | git config --global http.sslVerify false | 20 | git config --global http.sslVerify false |
| 21 | 21 | ||
| 22 | - #git pull https://gitee.com/openeuler/hpcrunner | 22 | + #git pull https://atomgit.com/openeuler/hpcrunner.git |
| 23 | mkdir tmpppp | 23 | mkdir tmpppp |
| 24 | mkdir -p /hpcrunner/templates/octopus/11.4 | 24 | mkdir -p /hpcrunner/templates/octopus/11.4 |
| 25 | cd tmpppp | 25 | cd tmpppp |
| @@ -19,7 +19,7 @@ From: helloxusuo/repo/base:oe2203sp2 | |||
| 19 | git init | 19 | git init |
| 20 | git config --global http.sslVerify false | 20 | git config --global http.sslVerify false |
| 21 | 21 | ||
| 22 | - #git pull https://gitee.com/openeuler/hpcrunner | 22 | + #git pull https://atomgit.com/openeuler/hpcrunner.git |
| 23 | mkdir tmpppp | 23 | mkdir tmpppp |
| 24 | mkdir -p /hpcrunner/templates/octopus/11.4 | 24 | mkdir -p /hpcrunner/templates/octopus/11.4 |
| 25 | cd tmpppp | 25 | cd tmpppp |
| @@ -19,7 +19,7 @@ From: helloxusuo/repo/base:oe2203sp2 | |||
| 19 | git init | 19 | git init |
| 20 | git config --global http.sslVerify false | 20 | git config --global http.sslVerify false |
| 21 | 21 | ||
| 22 | - #git pull https://gitee.com/openeuler/hpcrunner | 22 | + #git pull https://atomgit.com/openeuler/hpcrunner.git |
| 23 | mkdir tmpppp | 23 | mkdir tmpppp |
| 24 | mkdir -p /hpcrunner/templates/octopus/11.4 | 24 | mkdir -p /hpcrunner/templates/octopus/11.4 |
| 25 | cd tmpppp | 25 | cd tmpppp |
| @@ -13,7 +13,7 @@ From: openeuler/openeuler | |||
| 13 | yum install -y environment-modules git wget unzip make flex tar hostname | 13 | yum install -y environment-modules git wget unzip make flex tar hostname |
| 14 | source /etc/profile || true | 14 | source /etc/profile || true |
| 15 | git config --global http.sslVerify false | 15 | git config --global http.sslVerify false |
| 16 | - git clone https://gitee.com/openeuler/hpcrunner | 16 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 17 | cd hpcrunner | 17 | cd hpcrunner |
| 18 | source ./init.sh | 18 | source ./init.sh |
| 19 | ./jarvis -i | 19 | ./jarvis -i |
| @@ -14,7 +14,7 @@ From: openeuler/openeuler | |||
| 14 | yum install -y gcc gcc-c++ gcc-gfortran glibc-devel make libgfortran hostname | 14 | yum install -y gcc gcc-c++ gcc-gfortran glibc-devel make libgfortran hostname |
| 15 | source /etc/profile || true | 15 | source /etc/profile || true |
| 16 | git config --global http.sslVerify false | 16 | git config --global http.sslVerify false |
| 17 | - git clone https://gitee.com/openeuler/hpcrunner.git | 17 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 18 | cd hpcrunner | 18 | cd hpcrunner |
| 19 | source ./init.sh | 19 | source ./init.sh |
| 20 | ./jarvis -i | 20 | ./jarvis -i |
| @@ -14,7 +14,7 @@ From: openeuler/openeuler | |||
| 14 | yum install -y gcc gcc-c++ make cmake automake libX11-devel | 14 | yum install -y gcc gcc-c++ make cmake automake libX11-devel |
| 15 | source /etc/profile || true | 15 | source /etc/profile || true |
| 16 | git config --global http.sslVerify false | 16 | git config --global http.sslVerify false |
| 17 | - git clone https://gitee.com/openeuler/hpcrunner.git | 17 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 18 | cd hpcrunner | 18 | cd hpcrunner |
| 19 | source ./init.sh | 19 | source ./init.sh |
| 20 | source /etc/profile.d/modules.sh | 20 | source /etc/profile.d/modules.sh |
| @@ -14,7 +14,7 @@ From: openeuler/openeuler | |||
| 14 | yum install -y gcc gcc-c++ make cmake automake libX11-devel | 14 | yum install -y gcc gcc-c++ make cmake automake libX11-devel |
| 15 | source /etc/profile || true | 15 | source /etc/profile || true |
| 16 | git config --global http.sslVerify false | 16 | git config --global http.sslVerify false |
| 17 | - git clone https://gitee.com/openeuler/hpcrunner.git | 17 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 18 | cd hpcrunner | 18 | cd hpcrunner |
| 19 | source ./init.sh | 19 | source ./init.sh |
| 20 | source /etc/profile.d/modules.sh | 20 | source /etc/profile.d/modules.sh |
| @@ -15,7 +15,7 @@ From: openeuler/openeuler | |||
| 15 | yum install -y flex tcsh tcl lsof tk bc | 15 | yum install -y flex tcsh tcl lsof tk bc |
| 16 | source /etc/profile || true | 16 | source /etc/profile || true |
| 17 | git config --global http.sslVerify false | 17 | git config --global http.sslVerify false |
| 18 | - git clone https://gitee.com/openeuler/hpcrunner | 18 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 19 | cd hpcrunner | 19 | cd hpcrunner |
| 20 | source ./init.sh | 20 | source ./init.sh |
| 21 | ./jarvis -i | 21 | ./jarvis -i |
| @@ -15,7 +15,7 @@ From: openeuler/openeuler | |||
| 15 | yum install -y tcsh tcl lsof tk bc | 15 | yum install -y tcsh tcl lsof tk bc |
| 16 | source /etc/profile || true | 16 | source /etc/profile || true |
| 17 | git config --global http.sslVerify false | 17 | git config --global http.sslVerify false |
| 18 | - git clone https://gitee.com/openeuler/hpcrunner | 18 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 19 | cd hpcrunner | 19 | cd hpcrunner |
| 20 | source ./init.sh | 20 | source ./init.sh |
| 21 | ./jarvis -i | 21 | ./jarvis -i |
| @@ -13,7 +13,7 @@ From: openeuler/openeuler | |||
| 13 | yum install -y environment-modules git wget unzip make flex tar | 13 | yum install -y environment-modules git wget unzip make flex tar |
| 14 | source /etc/profile || true | 14 | source /etc/profile || true |
| 15 | git config --global http.sslVerify false | 15 | git config --global http.sslVerify false |
| 16 | - git clone https://gitee.com/openeuler/hpcrunner | 16 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 17 | cd hpcrunner | 17 | cd hpcrunner |
| 18 | source ./init.sh | 18 | source ./init.sh |
| 19 | ./jarvis -i | 19 | ./jarvis -i |
| @@ -14,7 +14,7 @@ From: openeuler/openeuler | |||
| 14 | yum install -y gcc gcc-c++ gcc-gfortran glibc-devel make libgfortran | 14 | yum install -y gcc gcc-c++ gcc-gfortran glibc-devel make libgfortran |
| 15 | source /etc/profile || true | 15 | source /etc/profile || true |
| 16 | git config --global http.sslVerify false | 16 | git config --global http.sslVerify false |
| 17 | - git clone https://gitee.com/openeuler/hpcrunner.git | 17 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 18 | cd hpcrunner | 18 | cd hpcrunner |
| 19 | source ./init.sh | 19 | source ./init.sh |
| 20 | ./jarvis -i | 20 | ./jarvis -i |
| @@ -13,7 +13,7 @@ From: openeuler/openeuler | |||
| 13 | yum install -y environment-modules git wget unzip make flex tar | 13 | yum install -y environment-modules git wget unzip make flex tar |
| 14 | source /etc/profile || true | 14 | source /etc/profile || true |
| 15 | git config --global http.sslVerify false | 15 | git config --global http.sslVerify false |
| 16 | - git clone https://gitee.com/openeuler/hpcrunner | 16 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 17 | cd hpcrunner | 17 | cd hpcrunner |
| 18 | source ./init.sh | 18 | source ./init.sh |
| 19 | ./jarvis -i | 19 | ./jarvis -i |
| @@ -14,7 +14,7 @@ From: openeuler/openeuler | |||
| 14 | yum install -y gcc gcc-c++ gcc-gfortran glibc-devel make libgfortran | 14 | yum install -y gcc gcc-c++ gcc-gfortran glibc-devel make libgfortran |
| 15 | source /etc/profile || true | 15 | source /etc/profile || true |
| 16 | git config --global http.sslVerify false | 16 | git config --global http.sslVerify false |
| 17 | - git clone https://gitee.com/openeuler/hpcrunner.git | 17 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 18 | cd hpcrunner | 18 | cd hpcrunner |
| 19 | source ./init.sh | 19 | source ./init.sh |
| 20 | ./jarvis -i | 20 | ./jarvis -i |
| @@ -13,7 +13,7 @@ From: openeuler/openeuler | |||
| 13 | yum install -y environment-modules git wget unzip make flex tar hostname | 13 | yum install -y environment-modules git wget unzip make flex tar hostname |
| 14 | source /etc/profile || true | 14 | source /etc/profile || true |
| 15 | git config --global http.sslVerify false | 15 | git config --global http.sslVerify false |
| 16 | - git clone https://gitee.com/openeuler/hpcrunner | 16 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 17 | cd hpcrunner | 17 | cd hpcrunner |
| 18 | source ./init.sh | 18 | source ./init.sh |
| 19 | ./jarvis -i | 19 | ./jarvis -i |
| @@ -14,7 +14,7 @@ From: openeuler/openeuler | |||
| 14 | yum install -y gcc gcc-c++ gcc-gfortran glibc-devel make libgfortran hostname | 14 | yum install -y gcc gcc-c++ gcc-gfortran glibc-devel make libgfortran hostname |
| 15 | source /etc/profile || true | 15 | source /etc/profile || true |
| 16 | git config --global http.sslVerify false | 16 | git config --global http.sslVerify false |
| 17 | - git clone https://gitee.com/openeuler/hpcrunner.git | 17 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 18 | cd hpcrunner | 18 | cd hpcrunner |
| 19 | source ./init.sh | 19 | source ./init.sh |
| 20 | ./jarvis -i | 20 | ./jarvis -i |
| @@ -13,7 +13,7 @@ From: openeuler/openeuler | |||
| 13 | yum install -y environment-modules git wget unzip make flex tar | 13 | yum install -y environment-modules git wget unzip make flex tar |
| 14 | source /etc/profile || true | 14 | source /etc/profile || true |
| 15 | git config --global http.sslVerify false | 15 | git config --global http.sslVerify false |
| 16 | - git clone https://gitee.com/openeuler/hpcrunner | 16 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 17 | cd hpcrunner | 17 | cd hpcrunner |
| 18 | source ./init.sh | 18 | source ./init.sh |
| 19 | ./jarvis -i | 19 | ./jarvis -i |
| @@ -14,7 +14,7 @@ From: openeuler/openeuler | |||
| 14 | yum install -y gcc gcc-c++ gcc-gfortran glibc-devel make libgfortran | 14 | yum install -y gcc gcc-c++ gcc-gfortran glibc-devel make libgfortran |
| 15 | source /etc/profile || true | 15 | source /etc/profile || true |
| 16 | git config --global http.sslVerify false | 16 | git config --global http.sslVerify false |
| 17 | - git clone https://gitee.com/openeuler/hpcrunner.git | 17 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 18 | cd hpcrunner | 18 | cd hpcrunner |
| 19 | source ./init.sh | 19 | source ./init.sh |
| 20 | ./jarvis -i | 20 | ./jarvis -i |
| @@ -15,7 +15,7 @@ From: openeuler/openeuler | |||
| 15 | pip3 install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple | 15 | pip3 install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple |
| 16 | source /etc/profile || true | 16 | source /etc/profile || true |
| 17 | git config --global http.sslVerify false | 17 | git config --global http.sslVerify false |
| 18 | - git clone https://gitee.com/openeuler/hpcrunner.git | 18 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 19 | cd hpcrunner | 19 | cd hpcrunner |
| 20 | source ./init.sh | 20 | source ./init.sh |
| 21 | # Switch config | 21 | # Switch config |
| @@ -15,7 +15,7 @@ From: openeuler/openeuler | |||
| 15 | pip3 install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple | 15 | pip3 install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple |
| 16 | source /etc/profile || true | 16 | source /etc/profile || true |
| 17 | git config --global http.sslVerify false | 17 | git config --global http.sslVerify false |
| 18 | - git clone https://gitee.com/openeuler/hpcrunner.git | 18 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 19 | cd hpcrunner | 19 | cd hpcrunner |
| 20 | source ./init.sh | 20 | source ./init.sh |
| 21 | # Switch config | 21 | # Switch config |
| @@ -15,7 +15,7 @@ From: openeuler/openeuler | |||
| 15 | yum install -y tcsh tcl lsof tk bc | 15 | yum install -y tcsh tcl lsof tk bc |
| 16 | source /etc/profile || true | 16 | source /etc/profile || true |
| 17 | git config --global http.sslVerify false | 17 | git config --global http.sslVerify false |
| 18 | - git clone https://gitee.com/openeuler/hpcrunner | 18 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 19 | cd hpcrunner | 19 | cd hpcrunner |
| 20 | source ./init.sh | 20 | source ./init.sh |
| 21 | # add your personal files here | 21 | # add your personal files here |
| @@ -15,7 +15,7 @@ From: openeuler/openeuler | |||
| 15 | yum install -y tcsh tcl lsof tk bc | 15 | yum install -y tcsh tcl lsof tk bc |
| 16 | source /etc/profile || true | 16 | source /etc/profile || true |
| 17 | git config --global http.sslVerify false | 17 | git config --global http.sslVerify false |
| 18 | - git clone https://gitee.com/openeuler/hpcrunner | 18 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 19 | cd hpcrunner | 19 | cd hpcrunner |
| 20 | source ./init.sh | 20 | source ./init.sh |
| 21 | # add your personal files here | 21 | # add your personal files here |
| @@ -0,0 +1,72 @@ | |||
| 1 | +if [[ $UseDev -eq 1 ]]; then | ||
| 2 | + set -x | ||
| 3 | +else | ||
| 4 | + set +x | ||
| 5 | +fi | ||
| 6 | +#!/bin/bash | ||
| 7 | +#安装编译器并加载对应的环境变量 | ||
| 8 | +rm -rf $JARVIS_ENV | ||
| 9 | +function load_hpckit() { | ||
| 10 | + echo "export BISHENG_VERSION=`ls $file_path|grep compiler|awk -F "compiler" '{print $2}'` " >> $JARVIS_ENV | ||
| 11 | + echo "export HMPI_VERSION=`ls $file_path|grep hmpi|awk -F "hmpi" '{print $2}'` " >> $JARVIS_ENV | ||
| 12 | + echo "module use ${JARVIS_ROOT}/software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/modulefiles " >> $JARVIS_ENV | ||
| 13 | + echo "module load bisheng/compiler${BISHENG_VERSION}/bishengmodule " >> $JARVIS_ENV | ||
| 14 | + echo "module load bisheng/hmpi${HMPI_VERSION}/release " >> $JARVIS_ENV | ||
| 15 | + echo "module load bisheng/kml${HMPI_VERSION}/kml " >> $JARVIS_ENV | ||
| 16 | + echo "module load bisheng/kml${HPCKIT_VERSION}/kblas/multi " >> $JARVIS_ENV | ||
| 17 | + | ||
| 18 | + echo "export HPCKIT_PATH=${JARVIS_UTILS}/hpckit/${HMPI_VERSION} " >> $JARVIS_ENV | ||
| 19 | + echo "export KML_LIB_PATH=${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/lib " >> $JARVIS_ENV | ||
| 20 | + echo "export KML_PATH=${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml " >> $JARVIS_ENV | ||
| 21 | + echo "export BLAS_LIBS=\"-L${JARVIS_ROOT}/software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/kml/bisheng/lib/${kp}/kblas/multi -lkblas\" " >> $JARVIS_ENV | ||
| 22 | + echo "export LAPACK_LIBS=\"-L${JARVIS_ROOT}/software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/kml/bisheng/lib/${kp} -lklapack_full\" " >> $JARVIS_ENV | ||
| 23 | + | ||
| 24 | + echo -e "已自动加载${HPCKIT_VERSION} 版本的hpckit套件" | ||
| 25 | + module li | ||
| 26 | +} | ||
| 27 | + | ||
| 28 | +function check_hpckit() { | ||
| 29 | + #判断hpckit是否安装,更新配套版本 | ||
| 30 | + file_path="${JARVIS_ROOT}/software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/modulefiles/bisheng" | ||
| 31 | + if [ -e "$file_path" ]; then | ||
| 32 | + echo -e "你正在使用 $HPCKIT_VERSION 版本的 HPCKit" | ||
| 33 | + load_hpckit | ||
| 34 | + else | ||
| 35 | + echo -e "INFO: 检测到未安装 $HPCKIT_VERSION 版本的 HPCKit,正在重新安装:" | ||
| 36 | + #./jarvis -use templates/basic_env/data.hpckit.config | ||
| 37 | + #./jarvis -dp | ||
| 38 | + ./jarvis -install hpckit/${HPCKIT_VERSION} any > /dev/null | ||
| 39 | + load_hpckit | ||
| 40 | + fi | ||
| 41 | +} | ||
| 42 | + | ||
| 43 | + | ||
| 44 | +#检查编译器 | ||
| 45 | +function check_com() { | ||
| 46 | + if [ -e ".meta" ]; then | ||
| 47 | + ifclang=`cat .meta | awk -F '/' 'END{print $NF}'|grep clang` | ||
| 48 | + ifbisheng=`cat .meta | awk -F '/' '{print $(NF-1)}'|grep bisheng` | ||
| 49 | + ifgcc=`cat .meta | awk -F '/' 'END{print $NF}'|grep gcc` | ||
| 50 | + if [ -n "$ifclang" ]; then | ||
| 51 | + return 1 | ||
| 52 | + elif [ -n "$ifbisheng" ]; then | ||
| 53 | + return 1 | ||
| 54 | + elif [ -n "$ifgcc" ]; then | ||
| 55 | + return 2 | ||
| 56 | + else | ||
| 57 | + return 0 | ||
| 58 | + fi | ||
| 59 | + fi | ||
| 60 | +} | ||
| 61 | + | ||
| 62 | + | ||
| 63 | +check_com | ||
| 64 | +if [ $? -eq 1 ]; then | ||
| 65 | + echo "using bisheng complier" | ||
| 66 | + check_hpckit | ||
| 67 | +elif [ $? -eq 2 ]; then | ||
| 68 | + echo "using gcc complier" | ||
| 69 | +else | ||
| 70 | + echo "" | ||
| 71 | +fi | ||
| 72 | +source $JARVIS_ENV | ||
| @@ -238,7 +238,7 @@ ${MPIRUN} ./multiple_arithmetics_example | |||
| 238 | ### 1.克隆仓库 | 238 | ### 1.克隆仓库 |
| 239 | 239 | ||
| 240 | ```bash | 240 | ```bash |
| 241 | -git clone https://gitee.com/openeuler/hpcrunner.git | 241 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 242 | ``` | 242 | ``` |
| 243 | 243 | ||
| 244 | ## 2.初始化hpcrunner 和 安装必要软件包 | 244 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -124,7 +124,7 @@ make random-test | |||
| 124 | ### 1.克隆仓库 | 124 | ### 1.克隆仓库 |
| 125 | 125 | ||
| 126 | ```bash | 126 | ```bash |
| 127 | -git clone https://gitee.com/openeuler/hpcrunner.git | 127 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 128 | ``` | 128 | ``` |
| 129 | 129 | ||
| 130 | ## 2.初始化hpcrunner 和 安装必要软件包 | 130 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -123,7 +123,7 @@ sed -i "/cd duns.*/a\ sed -i '1,42d' *.f include/*" testscript | |||
| 123 | ### 1.克隆仓库 | 123 | ### 1.克隆仓库 |
| 124 | 124 | ||
| 125 | ```bash | 125 | ```bash |
| 126 | -git clone https://gitee.com/openeuler/hpcrunner.git | 126 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 127 | ``` | 127 | ``` |
| 128 | 128 | ||
| 129 | ## 2.初始化hpcrunner 和 安装必要软件包 | 129 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -150,7 +150,7 @@ mpirun -n $(nproc) IMB-IO | |||
| 150 | ### 1.克隆仓库 | 150 | ### 1.克隆仓库 |
| 151 | 151 | ||
| 152 | ```bash | 152 | ```bash |
| 153 | -git clone https://gitee.com/openeuler/hpcrunner.git | 153 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 154 | ``` | 154 | ``` |
| 155 | 155 | ||
| 156 | ## 2.初始化hpcrunner 和 安装必要软件包 | 156 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -187,7 +187,7 @@ make test | |||
| 187 | ## 1.克隆仓库 | 187 | ## 1.克隆仓库 |
| 188 | 188 | ||
| 189 | ```bash | 189 | ```bash |
| 190 | -git clone https://gitee.com/openeuler/hpcrunner.git | 190 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 191 | ``` | 191 | ``` |
| 192 | 192 | ||
| 193 | ## 2.初始化hpcrunner 和 安装必要软件包 | 193 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -238,7 +238,7 @@ ${MPIRUN} ./multiple_arithmetics_example | |||
| 238 | ### 1.克隆仓库 | 238 | ### 1.克隆仓库 |
| 239 | 239 | ||
| 240 | ```bash | 240 | ```bash |
| 241 | -git clone https://gitee.com/openeuler/hpcrunner.git | 241 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 242 | ``` | 242 | ``` |
| 243 | 243 | ||
| 244 | ## 2.初始化hpcrunner 和 安装必要软件包 | 244 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -417,7 +417,7 @@ ncl -v | |||
| 417 | ### 1.克隆仓库 | 417 | ### 1.克隆仓库 |
| 418 | 418 | ||
| 419 | ```bash | 419 | ```bash |
| 420 | -git clone https://gitee.com/openeuler/hpcrunner.git | 420 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 421 | ``` | 421 | ``` |
| 422 | 422 | ||
| 423 | ## 2.初始化hpcrunner 和 安装必要软件包 | 423 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -232,7 +232,7 @@ ctest -R short -LE unstable # 快速测试(测试结果符合统计学规律 | |||
| 232 | ### 1.克隆仓库 | 232 | ### 1.克隆仓库 |
| 233 | 233 | ||
| 234 | ```bash | 234 | ```bash |
| 235 | -git clone https://gitee.com/openeuler/hpcrunner.git | 235 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 236 | ``` | 236 | ``` |
| 237 | 237 | ||
| 238 | ## 2.初始化hpcrunner 和 安装必要软件包 | 238 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -632,7 +632,7 @@ OpenLB同样会生成供Paraview应用进行解析的数据,可使用Paraview | |||
| 632 | 通过克隆git库安装hpcrunner | 632 | 通过克隆git库安装hpcrunner |
| 633 | 633 | ||
| 634 | ```bash | 634 | ```bash |
| 635 | -git clone https://gitee.com/openeuler/hpcrunner.git | 635 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 636 | ``` | 636 | ``` |
| 637 | 637 | ||
| 638 | ### 4.2 初始化hpcrunner | 638 | ### 4.2 初始化hpcrunner |
| @@ -225,7 +225,7 @@ make test | |||
| 225 | ### 1.克隆仓库 | 225 | ### 1.克隆仓库 |
| 226 | 226 | ||
| 227 | ```bash | 227 | ```bash |
| 228 | -git clone https://gitee.com/openeuler/hpcrunner.git | 228 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 229 | ``` | 229 | ``` |
| 230 | 230 | ||
| 231 | ## 2.初始化hpcrunner 和 安装必要软件包 | 231 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -243,7 +243,7 @@ ctest -R short -LE unstable # 快速测试(测试结果符合统计学规律 | |||
| 243 | ### 1.克隆仓库 | 243 | ### 1.克隆仓库 |
| 244 | 244 | ||
| 245 | ```bash | 245 | ```bash |
| 246 | -git clone https://gitee.com/openeuler/hpcrunner.git | 246 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 247 | ``` | 247 | ``` |
| 248 | 248 | ||
| 249 | ## 2.初始化hpcrunner 和 安装必要软件包 | 249 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -188,7 +188,7 @@ make test | |||
| 188 | ### 1.克隆仓库 | 188 | ### 1.克隆仓库 |
| 189 | 189 | ||
| 190 | ```bash | 190 | ```bash |
| 191 | -git clone https://gitee.com/openeuler/hpcrunner.git | 191 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 192 | ``` | 192 | ``` |
| 193 | 193 | ||
| 194 | ## 2.初始化hpcrunner 和 安装必要软件包 | 194 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -233,7 +233,7 @@ make test | |||
| 233 | ### 1.克隆仓库 | 233 | ### 1.克隆仓库 |
| 234 | 234 | ||
| 235 | ```bash | 235 | ```bash |
| 236 | -git clone https://gitee.com/openeuler/hpcrunner.git | 236 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 237 | ``` | 237 | ``` |
| 238 | 238 | ||
| 239 | ## 2.初始化hpcrunner 和 安装必要软件包 | 239 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -149,7 +149,7 @@ ${JARVIS_LIBS}/stream-1.8/bin/stream_mpi_c && ${JARVIS_LIBS}/stream-1.8/bin/stre | |||
| 149 | ### 1.克隆仓库 | 149 | ### 1.克隆仓库 |
| 150 | 150 | ||
| 151 | ```bash | 151 | ```bash |
| 152 | -git clone https://gitee.com/openeuler/hpcrunner.git | 152 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 153 | ``` | 153 | ``` |
| 154 | 154 | ||
| 155 | ## 2.初始化hpcrunner 和 安装必要软件包 | 155 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -184,7 +184,7 @@ make test_trinity | |||
| 184 | ### 1.克隆仓库 | 184 | ### 1.克隆仓库 |
| 185 | 185 | ||
| 186 | ```bash | 186 | ```bash |
| 187 | -git clone https://gitee.com/openeuler/hpcrunner.git | 187 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 188 | ``` | 188 | ``` |
| 189 | 189 | ||
| 190 | ## 2.初始化hpcrunner 和 安装必要软件包 | 190 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -208,7 +208,7 @@ make test-parallel | |||
| 208 | ### 1.克隆仓库 | 208 | ### 1.克隆仓库 |
| 209 | 209 | ||
| 210 | ```bash | 210 | ```bash |
| 211 | -git clone https://gitee.com/openeuler/hpcrunner.git | 211 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 212 | ``` | 212 | ``` |
| 213 | 213 | ||
| 214 | ## 2.初始化hpcrunner 和 安装必要软件包 | 214 | ## 2.初始化hpcrunner 和 安装必要软件包 |
| @@ -6,25 +6,28 @@ chmod -R +x ./test | |||
| 6 | chmod +x ./*.sh | 6 | chmod +x ./*.sh |
| 7 | chmod +x jarvis | 7 | chmod +x jarvis |
| 8 | mkdir -p tmp | 8 | mkdir -p tmp |
| 9 | -export JARVIS_ROOT=${CUR_PATH} #hpcrunner所在路径 | 9 | + |
| 10 | -export JARVIS_COMPILER=${CUR_PATH}/software/compiler | 10 | +#设置hpcrunner相关环境变量 |
| 11 | -export JARVIS_MPI=${CUR_PATH}/software/mpi | 11 | + |
| 12 | -export JARVIS_LIBS=${CUR_PATH}/software/libs | 12 | +export JARVIS_ROOT=$(dirname "$(realpath "$0")") #hpcrunner所在路径 |
| 13 | -export JARVIS_UTILS=${CUR_PATH}/software/utils | 13 | +export JARVIS_COMPILER=${JARVIS_ROOT}/software/compiler |
| 14 | -export JARVIS_DOWNLOAD=${CUR_PATH}/downloads #应用包下载存放路径 | 14 | +export JARVIS_MPI=${JARVIS_ROOT}/software/mpi |
| 15 | -export JARVIS_MODULES=${CUR_PATH}/software/modulefiles | 15 | +export JARVIS_LIBS=${JARVIS_ROOT}/software/libs |
| 16 | -export JARVIS_MODULEDEPS=${CUR_PATH}/software/moduledeps | 16 | +export JARVIS_UTILS=${JARVIS_ROOT}/software/utils |
| 17 | -export JARVIS_TMP=/tmp #应用安装路径 | 17 | +export JARVIS_DOWNLOAD=${JARVIS_ROOT}/downloads #应用包下载存放路径 |
| 18 | -export JARVIS_TMP_DOWNLOAD=${CUR_PATH}/tmp | 18 | +export JARVIS_MODULES=${JARVIS_ROOT}/software/modulefiles |
| 19 | -export JARVIS_EXE=${CUR_PATH}/exe | 19 | +export JARVIS_MODULEDEPS=${JARVIS_ROOT}/software/moduledeps |
| 20 | +export JARVIS_TMP=${JARVIS_ROOT}/tmp #应用安装路径 | ||
| 21 | +export JARVIS_TMP_DOWNLOAD=${JARVIS_ROOT}/tmp | ||
| 22 | +export JARVIS_EXE=${JARVIS_ROOT}/exe | ||
| 20 | export JARVIS_PROXY=https://github.com #github网络代理,默认使用官方源 | 23 | export JARVIS_PROXY=https://github.com #github网络代理,默认使用官方源 |
| 21 | export UseGitee=1 #下载源是否优先使用gitee,1代表优先使用 | 24 | export UseGitee=1 #下载源是否优先使用gitee,1代表优先使用 |
| 25 | +export UseDev=0 #确定是否使用开发者模式,1代表使用 | ||
| 22 | export UseLatest=0 #依赖是否优先安装最新版,1代表优先使用 | 26 | export UseLatest=0 #依赖是否优先安装最新版,1代表优先使用 |
| 23 | - | 27 | +export JARVIS_ENV=${JARVIS_ROOT}/bashrc #jarvis环境变量文件 |
| 24 | -export DOWNLOAD_TOOL=${CUR_PATH}/package/common/download.sh | 28 | +export DOWNLOAD_TOOL=${JARVIS_ROOT}/package/common/download.sh |
| 25 | -export CHECK_DEPS=${CUR_PATH}/package/common/check_deps.sh | 29 | +export CHECK_DEPS=${JARVIS_ROOT}/package/common/check_deps.sh |
| 26 | -export CHECK_ROOT=${CUR_PATH}/package/common/check_root.sh | 30 | +export CHECK_ROOT=${JARVIS_ROOT}/package/common/check_root.sh |
| 27 | - | ||
| 28 | export kp=neon | 31 | export kp=neon |
| 29 | ifsme=`lscpu|grep sme` | 32 | ifsme=`lscpu|grep sme` |
| 30 | ifsve=`lscpu|grep sve` | 33 | ifsve=`lscpu|grep sve` |
| @@ -37,10 +40,10 @@ elif [ -n "$ifsve" ]; then | |||
| 37 | elif [ -n "$ifneon" ]; then | 40 | elif [ -n "$ifneon" ]; then |
| 38 | export kp=neon | 41 | export kp=neon |
| 39 | else | 42 | else |
| 40 | - echo "not in kunpeng architecture" | 43 | + echo "[INFO] 当前运行环境非ARM架构" |
| 41 | fi | 44 | fi |
| 42 | 45 | ||
| 43 | -#判断hpckit使用版本 | 46 | +#设置依赖相关环境变量 |
| 44 | if [ ${UseLatest} -eq 0 ];then | 47 | if [ ${UseLatest} -eq 0 ];then |
| 45 | export HPCKIT_VERSION=25.1.0 | 48 | export HPCKIT_VERSION=25.1.0 |
| 46 | export BISHENG_VERSION=4.2.0.2 | 49 | export BISHENG_VERSION=4.2.0.2 |
| @@ -48,35 +51,49 @@ if [ ${UseLatest} -eq 0 ];then | |||
| 48 | elif [ ${UseLatest} -eq 1 ];then | 51 | elif [ ${UseLatest} -eq 1 ];then |
| 49 | export HPCKIT_VERSION=latest | 52 | export HPCKIT_VERSION=latest |
| 50 | else | 53 | else |
| 51 | - echo "[ERROR] UseLatest=${UseLatest}, unsupported value." | 54 | + echo "[ERROR] UseLatest=${UseLatest}, UseLatest只支持'0'或'1'" |
| 52 | exit 1 | 55 | exit 1 |
| 53 | fi | 56 | fi |
| 54 | 57 | ||
| 55 | -#判断hpckit是否安装,更新配套版本 | 58 | + |
| 56 | -file_path="${JARVIS_ROOT}/software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/modulefiles/bisheng" | 59 | +function check_network() { |
| 57 | -if [ -e "$file_path" ]; then | 60 | + ./jarvis -net |
| 58 | - echo -e "你正在使用 $HPCKIT_VERSION 版本的 HPCKit" | 61 | +} |
| 59 | - export BISHENG_VERSION=`ls $file_path|grep compiler|awk -F "compiler" '{print $2}'` | 62 | + |
| 60 | - export HMPI_VERSION=`ls $file_path|grep hmpi|awk -F "hmpi" '{print $2}'` | 63 | +#检查编译器 |
| 61 | - #module purge | 64 | + |
| 62 | -# module use ${JARVIS_ROOT}/software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/modulefiles | 65 | +function check_deps() { |
| 63 | -# module load bisheng/compiler${BISHENG_VERSION}/bishengmodule | 66 | + ifdep=`rpm -qa|grep flex` |
| 64 | -# module load bisheng/hmpi${HMPI_VERSION}/release | 67 | + if [ -n "$ifdep" ]; then |
| 65 | -# module load bisheng/kml${HMPI_VERSION}/kml > /dev/null 2>&1 | 68 | + echo "[INFO] 环境已完成基础依赖安装" |
| 66 | -# export HPCKIT_PATH=${JARVIS_UTILS}/hpckit/${HMPI_VERSION} | 69 | + else |
| 67 | -# export KML_LIB_PATH=${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml/bisheng/lib | 70 | + yum -y install git time zlib zlib-devel gcc gcc-c++ environment-modules python python3 python3-devel \ |
| 68 | -# export KML_PATH=${HPCKIT_PATH}/HPCKit/${HMPI_VERSION}/kml | 71 | + python3-libs python3-pip cmake make numactl numactl-devel numactl-libs rpmdevtools wget libtirpc \ |
| 69 | -# echo -e "已自动加载毕昇编译器、Hyper-MPI和鲲鹏数学库:" | 72 | + libtirpc-devel unzip flex tar patch glibc-devel rpcbind csh perl-XML-LibXML xorg-x11-xauth curl \ |
| 70 | -# module li | 73 | + curl-devel libcurl-devel |
| 71 | -else | 74 | + if [ $? -ne 0 ]; then |
| 72 | - echo -e "INFO: 检测到未安装 $HPCKIT_VERSION 版本的 HPCKit,请依次执行以下命令安装:" | 75 | + echo "[ERROR] 基础依赖安装失败" |
| 73 | - echo -e "./jarvis -use templates/basic_env/data.hpckit.config\n./jarvis -dp" | 76 | + exit 1 |
| 74 | -fi | 77 | + fi |
| 78 | + fi | ||
| 79 | +} | ||
| 80 | + | ||
| 81 | +#命令执行 | ||
| 82 | + | ||
| 83 | +check_network | ||
| 84 | +check_deps | ||
| 75 | 85 | ||
| 76 | 86 | ||
| 77 | #Install modules | 87 | #Install modules |
| 78 | if ! type module >/dev/null 2>&1;then | 88 | if ! type module >/dev/null 2>&1;then |
| 79 | echo "Install environment-modules" | 89 | echo "Install environment-modules" |
| 80 | . $CHECK_ROOT && yum install -y environment-modules || apt install -y environment-modules | 90 | . $CHECK_ROOT && yum install -y environment-modules || apt install -y environment-modules |
| 91 | + if [ $? -ne 0 ]; then | ||
| 92 | + echo "[ERROR] environment-modules安装失败" | ||
| 93 | + exit 1 | ||
| 94 | + fi | ||
| 81 | source /etc/profile | 95 | source /etc/profile |
| 82 | fi | 96 | fi |
| 97 | + | ||
| 98 | +echo "[INFO] 成功完成初始化" | ||
| 99 | + | ||
| @@ -1,10 +1,14 @@ | |||
| 1 | #!/bin/bash | 1 | #!/bin/bash |
| 2 | -echo -e "\e[1;31m __ ___ .______ ____ ____ __ _______. "; | 2 | +CUR_SESSION_LEADER_ID=$(ps -o sid= -p $$) |
| 3 | -echo -e "\e[1;32m | | / \ | _ \ \ \ / / | | / | "; | 3 | +CUR_PPID=$PPID |
| 4 | -echo -e "\e[1;33m | | / ^ \ | |_) | \ \/ / | | | (----\` "; | 4 | +if [[ ${CUR_PPID} == ${CUR_SESSION_LEADER_ID} ]]; then |
| 5 | -echo -e "\e[1;34m .--. | | / /_\ \ | / \ / | | \ \ "; | 5 | + echo -e "\e[1;31m __ ___ .______ ____ ____ __ _______. "; |
| 6 | -echo -e "\e[1;35m | \`--' | / _____ \ | |\ \----. \ / | | .----) | "; | 6 | + echo -e "\e[1;32m | | / \ | _ \ \ \ / / | | / | "; |
| 7 | -echo -e "\e[1;36m \______/ /__/ \__\ | _| \`._____| \__/ |__| |_______/ "; | 7 | + echo -e "\e[1;33m | | / ^ \ | |_) | \ \/ / | | | (----\` "; |
| 8 | -echo -e "\e[0m" | 8 | + echo -e "\e[1;34m .--. | | / /_\ \ | / \ / | | \ \ "; |
| 9 | + echo -e "\e[1;35m | \`--' | / _____ \ | |\ \----. \ / | | .----) | "; | ||
| 10 | + echo -e "\e[1;36m \______/ /__/ \__\ | _| \`._____| \__/ |__| |_______/ "; | ||
| 11 | + echo -e "\e[0m" | ||
| 12 | +fi | ||
| 9 | #prevent whitespace problems | 13 | #prevent whitespace problems |
| 10 | python3 ./src/jarvis.py "$@" | 14 | python3 ./src/jarvis.py "$@" |
| @@ -5,6 +5,31 @@ url= | |||
| 5 | filename= | 5 | filename= |
| 6 | OPTIND=1 | 6 | OPTIND=1 |
| 7 | 7 | ||
| 8 | +function downloadfile(){ | ||
| 9 | + if [ "$type_" == "wget" ];then | ||
| 10 | + if [[ $UseDev -eq 1 ]]; then | ||
| 11 | + echo -e "\033[0;32m[Info]\033[0m:Using commands: wget $url -O $exist_path --no-check-certificate" | ||
| 12 | + fi | ||
| 13 | + wget $url -O $exist_path --no-check-certificate || rm -rf $exist_path | ||
| 14 | + elif [ "$type_" == "git" ];then | ||
| 15 | + if [[ $UseDev -eq 1 ]]; then | ||
| 16 | + echo -e "\033[0;32m[Info]\033[0m:Using commands: git clone $url $exist_path" | ||
| 17 | + fi | ||
| 18 | + git clone $url $exist_path | ||
| 19 | + else | ||
| 20 | + echo -e "\033[0;31m[Error]\033[0m:Unsupported download mode:"$type_ | ||
| 21 | + exit 0 | ||
| 22 | + fi | ||
| 23 | + | ||
| 24 | + #下载失败 | ||
| 25 | + if [ $? != 0 ];then | ||
| 26 | + rm -rf $exist_path | ||
| 27 | + echo -e "\033[0;31m[Error]\033[0m:Download failed:"$url | ||
| 28 | + exit 0 | ||
| 29 | + fi | ||
| 30 | +} | ||
| 31 | + | ||
| 32 | + | ||
| 8 | while getopts ":u:f:t:" opt; | 33 | while getopts ":u:f:t:" opt; |
| 9 | do | 34 | do |
| 10 | case $opt in | 35 | case $opt in |
| @@ -36,23 +61,13 @@ fi | |||
| 36 | 61 | ||
| 37 | #判断文件是否存在 | 62 | #判断文件是否存在 |
| 38 | if [ ! -e $exist_path ];then | 63 | if [ ! -e $exist_path ];then |
| 39 | - if [ "$type_" == "wget" ];then | 64 | + downloadfile |
| 40 | - echo -e "\033[0;32m[Info]\033[0m:Using commands: wget $url -O $exist_path --no-check-certificate" | ||
| 41 | - wget $url -O $exist_path --no-check-certificate || rm -rf $exist_path | ||
| 42 | - elif [ "$type_" == "git" ];then | ||
| 43 | - echo -e "\033[0;32m[Info]\033[0m:Using commands: git clone $url $exist_path" | ||
| 44 | - git clone $url $exist_path | ||
| 45 | - else | ||
| 46 | - echo -e "\033[0;31m[Error]\033[0m:Unsupported download mode:"$type_ | ||
| 47 | - exit 0 | ||
| 48 | - fi | ||
| 49 | - | ||
| 50 | - #下载失败 | ||
| 51 | - if [ $? != 0 ];then | ||
| 52 | - rm -rf $exist_path | ||
| 53 | - echo -e "\033[0;31m[Error]\033[0m:Download failed:"$url | ||
| 54 | - exit 0 | ||
| 55 | - fi | ||
| 56 | else | 65 | else |
| 57 | - echo -e "\033[0;32m[Info]\033[0m:"$exist_path" already exist" | 66 | + fileSize=`ll $exist_path |awk '{print $5}'` |
| 67 | + if [ "$fileSize" -eq 0 ]; then | ||
| 68 | + rm -rf $exist_path | ||
| 69 | + downloadfile | ||
| 70 | + else | ||
| 71 | + echo -e "\033[0;32m[Info]\033[0m:"$exist_path" already exist" | ||
| 72 | + fi | ||
| 58 | fi | 73 | fi |
| @@ -1,5 +1,9 @@ | |||
| 1 | #!/bin/bash | 1 | #!/bin/bash |
| 2 | -set -x | 2 | +if [[ $UseDev -eq 1 ]]; then |
| 3 | + set -x | ||
| 4 | +else | ||
| 5 | + set +x | ||
| 6 | +fi | ||
| 3 | set -e | 7 | set -e |
| 4 | #hpckit_ver="24.0.RC1" | 8 | #hpckit_ver="24.0.RC1" |
| 5 | . ${DOWNLOAD_TOOL} -u https://mirrors.huaweicloud.com/kunpeng/archive/HPC/HPCKit/HPCKit_${hpckit_ver}_Linux-aarch64.tar.gz | 9 | . ${DOWNLOAD_TOOL} -u https://mirrors.huaweicloud.com/kunpeng/archive/HPC/HPCKit/HPCKit_${hpckit_ver}_Linux-aarch64.tar.gz |
| @@ -11,7 +15,7 @@ fi | |||
| 11 | cd HPCKit_${hpckit_ver}_Linux-aarch64 | 15 | cd HPCKit_${hpckit_ver}_Linux-aarch64 |
| 12 | sh install.sh -y --prefix=$1 | 16 | sh install.sh -y --prefix=$1 |
| 13 | 17 | ||
| 14 | -software_path="$1/../../.." | 18 | +software_path="${JARVIS_ROOT}/software" |
| 15 | if [ ! -d ${software_path}/modulefiles/hpckit${hpckit_ver} ];then | 19 | if [ ! -d ${software_path}/modulefiles/hpckit${hpckit_ver} ];then |
| 16 | ln -s $1/HPCKit/latest/modulefiles ${software_path}/modulefiles/hpckit${hpckit_ver} | 20 | ln -s $1/HPCKit/latest/modulefiles ${software_path}/modulefiles/hpckit${hpckit_ver} |
| 17 | 21 | ||
| @@ -23,9 +27,9 @@ if [ ! -d ${software_path}/modulefiles/hpckit${hpckit_ver} ];then | |||
| 23 | fi | 27 | fi |
| 24 | 28 | ||
| 25 | export HPCKIT_VERSION=${hpckit_ver} | 29 | export HPCKIT_VERSION=${hpckit_ver} |
| 26 | -file_path="${JARVIS_ROOT}/software/utils/hpckit/${HPCKIT_VERSION}/HPCKit/${HPCKIT_VERSION}/modulefiles/bisheng" | 30 | +file_path="$1/HPCKit/${HPCKIT_VERSION}/modulefiles/bisheng" |
| 27 | export BISHENG_VERSION=`ls $file_path|grep compiler|awk -F "compiler" '{print $2}'` | 31 | export BISHENG_VERSION=`ls $file_path|grep compiler|awk -F "compiler" '{print $2}'` |
| 28 | export HMPI_VERSION=`ls $file_path|grep hmpi|awk -F "hmpi" '{print $2}'` | 32 | export HMPI_VERSION=`ls $file_path|grep hmpi|awk -F "hmpi" '{print $2}'` |
| 29 | 33 | ||
| 30 | echo -e "HPCKit has installed in your environment." | 34 | echo -e "HPCKit has installed in your environment." |
| 31 | -echo -e "你正在使用 $HPCKIT_VERSION 版本的 HPCKKit" | 35 | +echo -e "你正在使用 $HPCKIT_VERSION 版本的 HPCKit" |
| @@ -2,5 +2,5 @@ | |||
| 2 | git config core.fileMode false | 2 | git config core.fileMode false |
| 3 | git config --global user.name 'xxx' | 3 | git config --global user.name 'xxx' |
| 4 | git config --global user.email 'xxx@qq.com' | 4 | git config --global user.email 'xxx@qq.com' |
| 5 | -git remote add upstream https://gitee.com/openeuler/hpcrunner.git | 5 | +git remote add upstream https://atomgit.com/openeuler/hpcrunner.git |
| 6 | -#git remote set-url upstream https://gitee.com/openeuler/hpcrunner.git | 6 | +#git remote set-url upstream https://atomgit.com/openeuler/hpcrunner.git |
| @@ -80,8 +80,8 @@ class AnalysisService: | |||
| 80 | def env(self): | 80 | def env(self): |
| 81 | self.jenv.env() | 81 | self.jenv.env() |
| 82 | 82 | ||
| 83 | - def install(self,install_args): | 83 | + def install(self,install_args, prefix=None): |
| 84 | - self.jinstall.install(install_args) | 84 | + self.jinstall.install(install_args, prefix) |
| 85 | 85 | ||
| 86 | def get_install_list(self): | 86 | def get_install_list(self): |
| 87 | self.jinstall.list() | 87 | self.jinstall.list() |
| @@ -1,9 +1,15 @@ | |||
| 1 | #!/usr/bin/env python3 | 1 | #!/usr/bin/env python3 |
| 2 | # -*- coding: utf-8 -*- | 2 | # -*- coding: utf-8 -*- |
| 3 | import os | 3 | import os |
| 4 | +import subprocess | ||
| 4 | from dataService import DataService | 5 | from dataService import DataService |
| 5 | from executeService import ExecuteService | 6 | from executeService import ExecuteService |
| 6 | from toolService import ToolService | 7 | from toolService import ToolService |
| 8 | +def run_command(command): | ||
| 9 | + # 使用os.system执行命令 | ||
| 10 | + os.system(command) | ||
| 11 | + | ||
| 12 | + | ||
| 7 | 13 | ||
| 8 | class ConfigService: | 14 | class ConfigService: |
| 9 | def __init__(self): | 15 | def __init__(self): |
| @@ -26,5 +32,7 @@ class ConfigService: | |||
| 26 | print(f"key [{key}] not found in {config_file}, switch failed.") | 32 | print(f"key [{key}] not found in {config_file}, switch failed.") |
| 27 | return | 33 | return |
| 28 | self.tool.write_file(self.meta_path, config_file.strip()) | 34 | self.tool.write_file(self.meta_path, config_file.strip()) |
| 35 | + #os.system('bash -c "source dep_install/install_hpckit.sh"') | ||
| 36 | + run_command("source dep_install/install_hpckit.sh") | ||
| 29 | print("Successfully switched. config file saved in file .meta") | 37 | print("Successfully switched. config file saved in file .meta") |
| 30 | 38 | ||
| @@ -27,7 +27,7 @@ From: {image} | |||
| 27 | yum install -y tcsh tcl lsof tk bc | 27 | yum install -y tcsh tcl lsof tk bc |
| 28 | source /etc/profile || true | 28 | source /etc/profile || true |
| 29 | git config --global http.sslVerify false | 29 | git config --global http.sslVerify false |
| 30 | - git clone https://gitee.com/openeuler/hpcrunner | 30 | + git clone https://atomgit.com/openeuler/hpcrunner.git |
| 31 | cd hpcrunner | 31 | cd hpcrunner |
| 32 | source ./init.sh | 32 | source ./init.sh |
| 33 | # add your personal files here | 33 | # add your personal files here |
| @@ -71,6 +71,7 @@ class DataService(object,metaclass=Singleton): | |||
| 71 | return DataService.config_file | 71 | return DataService.config_file |
| 72 | return self.tool.read_file(DataService.meta_file) | 72 | return self.tool.read_file(DataService.meta_file) |
| 73 | 73 | ||
| 74 | + | ||
| 74 | def get_data_config(self): | 75 | def get_data_config(self): |
| 75 | file_name = self.get_config_file_name() | 76 | file_name = self.get_config_file_name() |
| 76 | file_path = self.get_abspath(file_name) | 77 | file_path = self.get_abspath(file_name) |
| @@ -19,8 +19,8 @@ class DownloadService: | |||
| 19 | def check_network(self): | 19 | def check_network(self): |
| 20 | print(f"start network checking") | 20 | print(f"start network checking") |
| 21 | network_test_cmd = ''' | 21 | network_test_cmd = ''' |
| 22 | -wget --spider -T 5 -q -t 2 www.baidu.com | echo $? | 22 | +curl -s --connect-timeout 5 --head --request GET https://gitee.com > /dev/null |
| 23 | -curl -s -o /dev/null www.baidu.com | echo $? | 23 | +if [ $? -ne 0 ]; then echo "[ERROR] 当前网络异常,无法连接gitee,请检查网络"; env | egrep "http_proxy|https_proxy" > /dev/null; if [ $? -ne 0 ]; then echo "[WARNING] 未配置proxy代理"; fi; dns_info1=$(cat /etc/resolv.conf | grep -v "#" | grep nameserver); dns_info2=$(nmcli device show | grep DNS); if [ -z "${dns_info1}" ] && [ -z "${dns_info2}" ]; then echo "[WARNING] 未配置DNS信息"; fi; fi |
| 24 | ''' | 24 | ''' |
| 25 | self.exe.exec_raw(network_test_cmd) | 25 | self.exe.exec_raw(network_test_cmd) |
| 26 | 26 | ||
| @@ -112,7 +112,7 @@ class InstallService: | |||
| 112 | def get_hmpi_info(self): | 112 | def get_hmpi_info(self): |
| 113 | name = 'hmpi' | 113 | name = 'hmpi' |
| 114 | 114 | ||
| 115 | - ucg_info = self.get_cmd_output("ucg_info -v |grep version")[0] | 115 | + ucg_info = self.get_cmd_output("ucg_info -v |grep version")[-1] |
| 116 | if "UCG" in ucg_info: | 116 | if "UCG" in ucg_info: |
| 117 | version = ucg_info.split()[3] | 117 | version = ucg_info.split()[3] |
| 118 | else: | 118 | else: |
| @@ -415,7 +415,6 @@ setenv {sname.upper().replace('-','_')}_PATH {install_path} | |||
| 415 | other_args_uni = ' '.join(other_args) | 415 | other_args_uni = ' '.join(other_args) |
| 416 | #print(other_args) | 416 | #print(other_args) |
| 417 | install_cmd = f''' | 417 | install_cmd = f''' |
| 418 | -source ./init.sh | ||
| 419 | cd {abs_software_path} | 418 | cd {abs_software_path} |
| 420 | chmod +x {install_script} | 419 | chmod +x {install_script} |
| 421 | ./{install_script} {install_path} {other_args_uni} | 420 | ./{install_script} {install_path} {other_args_uni} |
| @@ -427,6 +426,12 @@ chmod +x {install_script} | |||
| 427 | print("install failed") | 426 | print("install failed") |
| 428 | sys.exit(1) | 427 | sys.exit(1) |
| 429 | 428 | ||
| 429 | + def ensure_symlink(self, real_path, logical_path): | ||
| 430 | + if os.path.islink(logical_path) or os.path.exists(logical_path): | ||
| 431 | + return | ||
| 432 | + self.tool.mkdirs(os.path.dirname(logical_path)) | ||
| 433 | + os.symlink(real_path, logical_path) | ||
| 434 | + | ||
| 430 | def add_install_info(self, software_info, install_path): | 435 | def add_install_info(self, software_info, install_path): |
| 431 | software_dict = {} | 436 | software_dict = {} |
| 432 | software_dict['name'] = software_info['sname'] | 437 | software_dict['name'] = software_info['sname'] |
| @@ -441,14 +446,14 @@ chmod +x {install_script} | |||
| 441 | software_path = software_path.replace('package/', '', 1) | 446 | software_path = software_path.replace('package/', '', 1) |
| 442 | return software_path | 447 | return software_path |
| 443 | 448 | ||
| 444 | - def install(self, install_args): | 449 | + def install(self, install_args, prefix=None): |
| 445 | software_path = install_args[0] | 450 | software_path = install_args[0] |
| 446 | compiler_mpi_info = install_args[1] | 451 | compiler_mpi_info = install_args[1] |
| 447 | other_args = install_args[2:] | 452 | other_args = install_args[2:] |
| 448 | self.tool.prt_content("INSTALL " + software_path) | 453 | self.tool.prt_content("INSTALL " + software_path) |
| 449 | compilers = {"GCC":self.get_gcc_info, "CLANG":self.get_clang_info, | 454 | compilers = {"GCC":self.get_gcc_info, "CLANG":self.get_clang_info, |
| 450 | "NVC":self.get_nvc_info, "ICC":self.get_icc_info, | 455 | "NVC":self.get_nvc_info, "ICC":self.get_icc_info, |
| 451 | - "BISHENG":self.get_clang_info} | 456 | + "BISHENG":self.get_clang_info} |
| 452 | software_path = self.remove_prefix(software_path) | 457 | software_path = self.remove_prefix(software_path) |
| 453 | # software_path should exists | 458 | # software_path should exists |
| 454 | abs_software_path = self.check_software_path(software_path) | 459 | abs_software_path = self.check_software_path(software_path) |
| @@ -456,6 +461,7 @@ chmod +x {install_script} | |||
| 456 | compiler_mpi_info = self.check_compiler_mpi(compilers.keys(), compiler_mpi_info) | 461 | compiler_mpi_info = self.check_compiler_mpi(compilers.keys(), compiler_mpi_info) |
| 457 | if not compiler_mpi_info: return | 462 | if not compiler_mpi_info: return |
| 458 | software_info = self.get_software_info(software_path, compiler_mpi_info) | 463 | software_info = self.get_software_info(software_path, compiler_mpi_info) |
| 464 | + software_name = software_info.get('sname') | ||
| 459 | stype = software_info['type'] | 465 | stype = software_info['type'] |
| 460 | # get compiler name and version | 466 | # get compiler name and version |
| 461 | env_info = self.get_compiler_info(compilers, compiler_mpi_info) | 467 | env_info = self.get_compiler_info(compilers, compiler_mpi_info) |
| @@ -469,20 +475,28 @@ chmod +x {install_script} | |||
| 469 | print(f"Use Compiler: {env_info['cname']} {cfullver}") | 475 | print(f"Use Compiler: {env_info['cname']} {cfullver}") |
| 470 | 476 | ||
| 471 | # get install path | 477 | # get install path |
| 472 | - install_path = self.get_install_path(software_info, env_info) | 478 | + logical_install_path = self.get_install_path(software_info, env_info) |
| 473 | - if not install_path: return | 479 | + if not logical_install_path: |
| 480 | + return | ||
| 481 | + if prefix: | ||
| 482 | + real_install_path = logical_install_path.replace(self.SOFTWARE_PATH, os.path.join(prefix, "software"), 1) | ||
| 483 | + else: | ||
| 484 | + real_install_path = logical_install_path | ||
| 474 | # get install script | 485 | # get install script |
| 475 | - self.install_package(abs_software_path, install_path, other_args) | 486 | + self.install_package(abs_software_path, real_install_path, other_args) |
| 487 | + # create soft link from realpath to hpcrunner/software | ||
| 488 | + self.ensure_symlink(real_install_path, logical_install_path) | ||
| 476 | # add install info | 489 | # add install info |
| 477 | - self.add_install_info(software_info, install_path) | 490 | + self.add_install_info(software_info, logical_install_path) |
| 478 | # gen module file | 491 | # gen module file |
| 479 | - self.gen_module_file( install_path, software_info, env_info) | 492 | + if software_name == 'hpckit': |
| 493 | + return | ||
| 494 | + self.gen_module_file(logical_install_path, software_info, env_info) | ||
| 480 | 495 | ||
| 481 | def install_depend(self): | 496 | def install_depend(self): |
| 482 | depend_file = 'depend_install.sh' | 497 | depend_file = 'depend_install.sh' |
| 483 | print(f"start installing dependendcy of {DataService.app_name}") | 498 | print(f"start installing dependendcy of {DataService.app_name}") |
| 484 | depend_content = f''' | 499 | depend_content = f''' |
| 485 | -source ./init.sh | ||
| 486 | {DataService.dependency} | 500 | {DataService.dependency} |
| 487 | ''' | 501 | ''' |
| 488 | self.tool.write_file(depend_file, depend_content) | 502 | self.tool.write_file(depend_file, depend_content) |
| @@ -18,6 +18,7 @@ class Jarvis: | |||
| 18 | parser.add_argument("-loop","--loop", help=f"get loop simulation code", action="store_true") | 18 | parser.add_argument("-loop","--loop", help=f"get loop simulation code", action="store_true") |
| 19 | #accept software_name/version GCC/GCC+MPI/CLANG/CLANG+MPI | 19 | #accept software_name/version GCC/GCC+MPI/CLANG/CLANG+MPI |
| 20 | parser.add_argument("-install","--install", help=f"install dependency", nargs='+') | 20 | parser.add_argument("-install","--install", help=f"install dependency", nargs='+') |
| 21 | + parser.add_argument("-prefix","--prefix", help="custom install root for software (only valid with -install)", default=None) | ||
| 21 | #remove | 22 | #remove |
| 22 | parser.add_argument("-remove","--remove", help=f"remove software", nargs=1) | 23 | parser.add_argument("-remove","--remove", help=f"remove software", nargs=1) |
| 23 | #find | 24 | #find |
| @@ -63,7 +64,7 @@ class Jarvis: | |||
| 63 | 64 | ||
| 64 | def main(self): | 65 | def main(self): |
| 65 | if self.args.version: | 66 | if self.args.version: |
| 66 | - print("V1.0") | 67 | + print("V2.4.1.RC1") |
| 67 | 68 | ||
| 68 | if self.args.info: | 69 | if self.args.info: |
| 69 | self.analysis.get_machine_info() | 70 | self.analysis.get_machine_info() |
| @@ -78,7 +79,7 @@ class Jarvis: | |||
| 78 | self.analysis.install_deps() | 79 | self.analysis.install_deps() |
| 79 | 80 | ||
| 80 | if self.args.install: | 81 | if self.args.install: |
| 81 | - self.analysis.install(self.args.install) | 82 | + self.analysis.install(self.args.install, prefix=self.args.prefix) |
| 82 | 83 | ||
| 83 | if self.args.remove: | 84 | if self.args.remove: |
| 84 | self.analysis.remove(self.args.remove[0]) | 85 | self.analysis.remove(self.args.remove[0]) |
| @@ -1,6 +1,6 @@ | |||
| 1 | 测试流程 | 1 | 测试流程 |
| 2 | 1、下载jarvis | 2 | 1、下载jarvis |
| 3 | -git clone https://gitee.com/openeuler/hpcrunner.git | 3 | +git clone https://atomgit.com/openeuler/hpcrunner.git |
| 4 | cd hpcrunner | 4 | cd hpcrunner |
| 5 | 5 | ||
| 6 | 2、获取jarvis应用模板 | 6 | 2、获取jarvis应用模板 |
| @@ -18,7 +18,6 @@ rm -rf hpl-2.3 | |||
| 18 | tar -xzvf $JARVIS_DOWNLOAD/hpl-2.3.tar.gz | 18 | tar -xzvf $JARVIS_DOWNLOAD/hpl-2.3.tar.gz |
| 19 | 19 | ||
| 20 | [ENV] | 20 | [ENV] |
| 21 | -source ./init.sh | ||
| 22 | module purge | 21 | module purge |
| 23 | module use ./software/modulefiles | 22 | module use ./software/modulefiles |
| 24 | module load bisheng/2.5.0 | 23 | module load bisheng/2.5.0 |
| @@ -20,7 +20,6 @@ if [ ! -d "hpl-2.3" ]; then | |||
| 20 | fi | 20 | fi |
| 21 | 21 | ||
| 22 | [ENV] | 22 | [ENV] |
| 23 | -source ./init.sh | ||
| 24 | module purge | 23 | module purge |
| 25 | module use ./software/modulefiles | 24 | module use ./software/modulefiles |
| 26 | module load bisheng/2.5.0 | 25 | module load bisheng/2.5.0 |
| @@ -0,0 +1,43 @@ | |||
| 1 | +[SERVER] | ||
| 2 | +11.11.11.11 | ||
| 3 | + | ||
| 4 | +[DOWNLOAD] | ||
| 5 | +qe/7.3 https://gitlab.com/QEF/q-e/-/archive/qe-7.3/q-e-qe-7.3.tar | ||
| 6 | + | ||
| 7 | +[DEPENDENCY] | ||
| 8 | +source $JARVIS_ENV | ||
| 9 | + | ||
| 10 | +[ENV] | ||
| 11 | +source $JARVIS_ENV | ||
| 12 | +export PATH=${JARVIS_ROOT}/q-e-qe-7.3-kml/bin:$PATH | ||
| 13 | + | ||
| 14 | + | ||
| 15 | +[APP] | ||
| 16 | +app_name = QE | ||
| 17 | +build_dir = ${JARVIS_TMP}/q-e-qe-7.3 | ||
| 18 | +binary_dir = | ||
| 19 | +case_dir = | ||
| 20 | + | ||
| 21 | +[BUILD] | ||
| 22 | +if [[ $UseDev -eq 1 ]]; then | ||
| 23 | + set -x | ||
| 24 | +else | ||
| 25 | + set +x | ||
| 26 | +fi | ||
| 27 | + | ||
| 28 | +cd ${JARVIS_TMP} | ||
| 29 | +tar -xf ${JARVIS_DOWNLOAD}/q-e-qe-7.3.tar | ||
| 30 | +cd q-e-qe-7.3 | ||
| 31 | + | ||
| 32 | +./configure F90=flang F77=flang FC=flang MPIF90=mpifort MPIF77=mpifort CC=mpicc FCFLAGS="-O3 -mcpu=hip09 -mllvm -force-customized-pipeline=true" CFLAGS="-O3 -mcpu=hip09 -mllvm -force-customized-pipeline=true" --with-scalapack=no --enable-openmp --prefix=$JARVIS_ROOT/q-e-qe-7.3-kml | ||
| 33 | +sed -i 's/gfortran/flang/g' make.inc | ||
| 34 | +make -j pwall | ||
| 35 | +make install | ||
| 36 | + | ||
| 37 | +[CLEAN] | ||
| 38 | +make clean | ||
| 39 | + | ||
| 40 | +[RUN] | ||
| 41 | +run = | ||
| 42 | +binary = | ||
| 43 | +nodes = 1 | ||