爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 5495|回复: 8

在大型机运行WRF如何提高运计算速度

[复制链接]

新浪微博达人勋

发表于 2020-8-30 16:58:55 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
各位前辈好,我想请问下在大型机上运行WRF3.8,进行长时间序列气候模拟,如何提高运行速度。
我研究区的范围是34.3-37.6N、105.7-109E,驱动数据是RDA提供的CESM输出结果(https://rda.ucar.edu/datasets/ds316.1/index.html#!description)。采用三层嵌套,嵌套比例1:3:3。详细信息见namelis.wps和namelist.input。我正在尝试用两层嵌套1:5,请问还有哪些途径可以尝试。   另外我用相同数据、参数在台式机上用15核跑的居然比大型机30核还快,这可能是怎么回事。
namelis.wps:
&share
wrf_core = 'ARW',
max_dom = 3,
start_date = '1999-10-01_00:00:00','1999-10-01_00:00:00','1999-10-01_00:00:00',
end_date   = '2001-01-01_00:00:00','2001-01-01_00:00:00','2001-01-01_00:00:00',
interval_seconds = 21600
io_form_geogrid = 2,
/

&geogrid
parent_id         =   1,   1,  2,
parent_grid_ratio =   1,   3,  3,
i_parent_start    =   1,   9,  18,
j_parent_start    =   1,  10,  17,
e_we              =  40,  64,  91,
e_sn              =  37,  61,  88,
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!! IMPORTANT NOTE !!!!!!!!!!!!!!!!!!!!!!!!!!!!
! The default datasets used to produce the HGT_M, GREENFRAC,
! and LU_INDEX/LANDUSEF fields have changed in WPS v3.8. The HGT_M field
! is now interpolated from 30-arc-second USGS GMTED2010, the GREENFRAC
! field is interpolated from MODIS FPAR, and the LU_INDEX/LANDUSEF fields
! are interpolated from 21-class MODIS.
!
! To match the output given by the default namelist.wps in WPS v3.7.1,
! the following setting for geog_data_res may be used:
!
! geog_data_res = 'gtopo_10m+usgs_10m+nesdis_greenfrac+10m','gtopo_2m+usgs_2m+nesdis_greenfrac+2m',
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!! IMPORTANT NOTE !!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
geog_data_res = 'default','default','default',
dx = 45000,
dy = 45000,
map_proj = 'lambert',
ref_lat   =  35.95,
ref_lon   =  107.35,
truelat1  =  30.0,
truelat2  =  60.0,
stand_lon =  107.35,
geog_data_path = '/group_homes/bjzshare/home/bjz/geog/geog/'
/

&ungrib
out_format = 'WPS',
/

&metgrid
fg_name = '/home/bjz/project/data/2000/CCSM4_CMIP5_MOAR_BC_20THC'
io_form_metgrid = 2,
opt_output_from_metgrid_path='/home/bjz/project/1'
/


namelist.input
&time_control
run_days                            = 458,
run_hours                           = 0,
run_minutes                         = 0,
run_seconds                         = 0,
start_year                          = 1999,1999,1999,
start_month                         = 10,   10,  10,
start_day                           = 01,   01,  01,
start_hour                          = 00,   00,  00,
start_minute                        = 00,   00,  00,
start_second                        = 00,   00,  00,
end_year                            = 2001, 2001, 2001,
end_month                           = 01,   01,  01,
end_day                             = 01,   01,  01,
end_hour                            = 00,   00,  00,
end_minute                          = 00,   00,  00,
end_second                          = 00,   00,  00,
interval_seconds                    = 21600
input_from_file                     = .true.,.true.,.true.,
history_interval                    = 1440,1440,60,
frames_per_outfile                  = 500,500,20000,
restart                             = .false.,
restart_interval                    = 50000,
io_form_history                     = 2
io_form_restart                     = 2
io_form_input                       = 2
io_form_boundary                    = 2
debug_level                         = 1000
/

&domains
time_step                           = 360,
time_step_fract_num                 = 0,
time_step_fract_den                 = 1,
max_dom                             = 3,
e_we                                = 40,64,91,
e_sn                                = 37,61,88,
e_vert                              = 30,   30,30,
p_top_requested                     = 10000,
num_metgrid_levels                  = 27,
num_metgrid_soil_levels             = 4,
dx                                  = 45000, 15000,5000,
dy                                  = 45000, 15000,5000,
grid_id                             = 1,     2, 3,
parent_id                           = 0,     1, 2,
i_parent_start                      = 1,     9,18,
j_parent_start                      = 1,     10,17,
parent_grid_ratio                   = 1,     3,3,
parent_time_step_ratio              = 1,     3,3,
feedback                            = 1,
smooth_option                       = 0
/

&physics
mp_physics                          = 3,     3,3,
ra_lw_physics                       = 1,     1,1,
ra_sw_physics                       = 1,     1,1,
radt                                = 27,    27,27,
sf_sfclay_physics                   = 1,     1,1,
sf_surface_physics                  = 2,     2,2,
bl_pbl_physics                      = 1,     1,1,
bldt                                = 0,     0,0,
cu_physics                          = 1,     1,0,
cudt                                = 5,     5,5,
isfflx                              = 1,
ifsnow                              = 1,
icloud                              = 1,
surface_input_source                = 1,
num_soil_layers                     = 4,
sf_urban_physics                    = 0,     0,0,
/

&fdda
/

&dynamics
w_damping                           = 0,
diff_opt                            = 1,      1,1,
km_opt                              = 4,      4,4,
diff_6th_opt                        = 0,      0,0,
diff_6th_factor                     = 0.12,   0.12,0.12,
base_temp                           = 290.
damp_opt                            = 0,
zdamp                               = 5000.,  5000.,5000.,
dampcoef                            = 0.2,
khdif                               = 0,
kvdif                               = 0,
non_hydrostatic                     = .true.,
moist_adv_opt                       = 1,
scalar_adv_opt                      = 1,     
/

&bdy_control
spec_bdy_width                      = 5,
spec_zone                           = 1,
relax_zone                          = 4,
specified                           = .true.,.false.,.false.,
nested                              = .false.,.true.,.true.,
/

&grib2
/

&namelist_quilt
nio_tasks_per_group = 0,
nio_groups = 1,
/
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2020-8-30 19:41:51 | 显示全部楼层

回帖奖励 +20 金钱

这是个技术活,要针对设置好的区域格点,在一定的集群环境下经过一系列测试才能得到最优节点分配,网格剖分,io数据格式, io_quilt等配置。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2020-8-30 21:45:49 | 显示全部楼层
等待中幸福 发表于 2020-8-30 19:41
这是个技术活,要针对设置好的区域格点,在一定的集群环境下经过一系列测试才能得到最优节点分配,网格剖分 ...

老师,后边几个词都听不懂了。这是技术员、管理员还是用户要做的工作?学校计算机集群才搭建好,是需要用户和管理者一同进行测试吗?(我主要想问我怎么和技术沟通这个问题)
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-8-30 23:40:20 | 显示全部楼层

回帖奖励 +20 金钱

我觉得可以在大型机上也只用 15 核试试, 记得有过帖子说每个节点只使用部分核的 performance 可能优于把节点的所有核跑满. 虽然我不确定这个说法的准确性, 但是在大型机上跑 wrf 玄学地方太多了, 试试也无妨...
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-8-30 23:42:47 | 显示全部楼层
小怪兽... 发表于 2020-8-30 21:45
老师,后边几个词都听不懂了。这是技术员、管理员还是用户要做的工作?学校计算机集群才搭建好,是需要用 ...

后面几个基本都是 namelist 里的选项
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-8-31 10:31:14 | 显示全部楼层

回帖奖励 +20 金钱

好像用几个核数有最佳的方案,一般来说最好是整数的平方最好,这个跟你设置的格点数也有关系
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2020-8-31 19:38:37 | 显示全部楼层
数学学得特别好 发表于 2020-8-30 23:40
我觉得可以在大型机上也只用 15 核试试, 记得有过帖子说每个节点只使用部分核的 performance 可能优于把节 ...

好的好的,谢谢您,我试试吧
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2020-8-31 19:45:38 | 显示全部楼层
好小猴 发表于 2020-8-31 10:31
好像用几个核数有最佳的方案,一般来说最好是整数的平方最好,这个跟你设置的格点数也有关系

http://bbs.06climate.com/forum.p ... D9%B6%C8&page=1
这个帖子中有提到,跟您说的是一回事吗
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-9-2 21:53:44 | 显示全部楼层
小怪兽... 发表于 2020-8-31 19:45
http://bbs.06climate.com/forum.php?mod=viewthread&tid=56567&extra=&highlight=WRF%2B%D4%CB%D0%D0%CB ...

嗯嗯,是的
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表