---
title: 运行和验证
description: "- 运行时指定的进程数需要根据机器配置而改变。"
url: https://www.hikunpeng.com/document/detail/zh/kunpenghpcs/hpcindapp/prtg-osc/openmind_kunpengwavewatch_02_0012.html
sourcePath: /source/zh/kunpenghpcs/hpcindapp/prtg-osc/openmind_kunpengwavewatch_02_0012.html
indexId: 8428a87943bc33eaac8ec84493caca9aca87991d22894f2984fdde55b59f7fc380
---
# 运行和验证

- 运行时指定的进程数需要根据机器配置而改变。
- 多节点运行时需要进行网络环境配置：

  - 在“/etc/hosts”中添加多台机器的IP与hostname。
  - 配置多台机器间的SSH免密登录。
  - 关闭防火墙，并使客户端与服务器之前保持不断开状态。


#### 运行和验证

1. 使用PuTTY工具，以root用户登录服务器。
2. 执行以下命令创建并且进入工作路径。

```
mkdir -p
/path/to/WW3_TEST
cd
/path/to/WW3_TEST
```


3. 下载测试算例，并且将其拷贝到“/path/to/WW3_TEST”目录。
4. 执行以下命令解压。

```
tar -xvf ww3_from_ftp.v6.07.tar.gz
cd cases
```


5. 执行以下命令设置环境变量。

```
source
/path/to/WAVEWATCH
/WW3-6.07.1/env_ww3.sh
export ww3_dir=
/path/to/WAVEWATCH
/WW3-6.07.1/model
```


6. 执行以下命令修改“mww3_case_01”文件。

  a. 打开“mww3_case_01”文件。

```
vi mww3_case_01
```


  b. 按“i”进入编辑模式，修改“mww3_case_01”文件。
    第61行：

```
#cd /scratch1/portfolios/NCEPDEV/ocean/noscrub/Henrique.Alves/WW3_CASES/cases
```


    第65行：

```
#module load intel mpt grads
```


    第72行：

```
compstr="Gnu"
```


    第143行：

```
#ww3_dir='echo $case_dir | sed 's/\/cases\/*//g''
```


    第138行：

```
proc=8
```


    第420行：

```
mpirun --allow-run-as-root --mca btl ^openib -np $proc --hostfile /path/to/WW3_TEST/cases/hostfile $path_e/ww3_multi
```


    执行6.a之后，按“Esc”键，输入“:set nu”，按“Enter”即可显示出行号。

  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
  d. 若删除第420行的“--hostfile /path/to/WW3_TEST/cases/hostfile ”，则为单节点运行。
    第138行的proc参数设置根据机器CPU数配置。亦可删掉第420行的-np $proc默认使用最大核心数。

  e. 如若发现双节点算例与单节点结果相似（top监测第二节点，发现未有运行情况且单双节点运行算例结果相似），可进行如下修改调整。（备用方案）
    修改第138行为：

```
#proc=8
```


    修改第420行为：

```
mpirun --allow-run-as-root --mca btl ^openib -np
-N
-x PATH=$PATH -x LD_LIBRARY_PATH=$LD_LIBRARY_PATH $proc --hostfile    /path/to/WW3_TEST/cases/hostfile $path_e/ww3_multi
```


    -np参数为使用的总进程数，-N参数为每个节点使用的进程数。需要根据机器配置进行调整。

7. 执行以下命令修改文件“comp.Gnu”和“link.Gnu”信息。

  a. 打开“comp.Gnu”文件。
    vi ../WW3-6.07.1/model/bin/comp.Gnu

  b. 按“i”进入编辑模式。
    将第93行的“comp=gfortran”修改为“comp=flang”。

    执行7.a之后，按“Esc”键，输入“:set nu”，按“Enter”即可显示出行号。

  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
  d. 打开“link.Gnu”文件。
    vi ../WW3-6.07.1/model/bin/link.Gnu

  e. 按“i”进入编辑模式。
    将第95行的“comp=gfortran”修改为“comp=flang”。

  f. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
8. 执行以下命令创建“hostfile”文件。

  a. 创建“hostfile”文件。

```
vi hostfile
```

```
Node1
Node2
```


    Node1和Node2为hostname（主机名）。

  b. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
9. 在node1服务器节点窗口，执行以下命令运行WW3程序。

```
./mww3_case_01
```

当ww3程序运行结束处出现如下图所示内容时，表示ww3程序运行正常结束。
需要查看“work_case_01/log.mww3”日志中的“Elapsed time”数值，单位是“s”，数值越少性能越优。

  - 双节点运行结果样例

  - 单节点运行结果样例
