CESM笔记——CESM1.0-CESM1.2.2-CESM2.1.3三个版本模式工作流对比

最近测试了CESM1.0,CESM1.2.2和CESM2.1.3三个版本,不同版本在workflow上有一些区别,来做点笔记。


CESM1.0

测试compset:B_2000,F_2000

workflow:

1. create_newcase -case ~/CESM/cesm1_0/script/B_2000 -compset B_2000 -res f19_g16 -mach tianhe
2. cd B_2000 

(optional) 修改env_mach_pes.xml 中核数,核数设置决定./configure -case是否能成功,e.g. NTASKS_ICE改为96, ROOTPE_ICE改为168
(optional) ./configure -cleanall ##如果重新编译,需先清空

3. ./configure -case

(optional) 修改env_build.xml,修改env_run.xml中的路径、STOP_OPTION、STOP_N等参数

4. ./case.build

修改case.submit中yhbatch批处理提交任务命令,-N (核数,需参考env_mach_pes.xml中TOTALPEL、MAX_TASKS_PER_NODE确定,取大于等于两者的比值的最小整数) –p (选择分区,yhi查看)
格式:yhbatch -N num_nodes -p partition *.run

5. ./case.submit
 

CESM1.2.2

测试compset: B_2000

workflow:

1. create_newcase -case ~/cesm1_0/scripts/B_2000 -compset B_2000 -res f19_g16 -mach tianhe
 
2. cd B_2000 

3. ./cesm.setup 

(optional) ./check_input_data -inputdata ~/CESM/inputdata -check

(optional) 修改env_build.xml中的路径

4. ./case.build

(optional) 修改env_run.xml中的路径,修改STOP_OPTION、STOP_N等参数,修改yhbatch提交命令

5. ./case.submit
 

CESM1_0 vs. CESM1.2.2, 最主要两点不同:

(1)CESM1.2.2中./cesm.setup取代了./configure -case

(2)yhbatch批处理命令在CESM中在env_run.xml{BATCHSUBMIT}参数中设置,不再在case.submit中设置。

CESM1.2.2具体的可以参考另一篇:https://blog.csdn.net/qq_27984679/article/details/107099940


CESM2.1.3

测试compset: BHIST

workflow:

1. ./create_newcase --case ~/CESM/cesm2/cime/scripts/FCHIST --compset BHIST --res f19_g17 --mach hpccube --compiler intel --run-unsupported

2. cd BHIST/

(optional) 修改env_mach_pes.xml中核数设置

(optional) 修改env_run.xml中的路径,修改STOP_OPTION、STOP_N等参数

3. ./case.setup

4. ./case.build

(optional) ./check_input_data ##必须build完成后才能检查

5. ./case.submit

CESM1_2_2 vs. CESM2.1.3, 目前发现三点不同:

(1)check_input_data的命令和顺序不同,CESM2需要在build之后才能使用check_input_data, CESM1.0和CESM1.2.2则不用,case建立好就能检查;

(2)CESM1.0和CESM1.2.2的*.build可执行文件是csh脚本,而CESM2是完全建立在CIME框架上的,*build可执行文件是python脚本。

(3)批处理设置多了一个env_batch.xml文件,这个文件是由移植模式时修改的config_batch.xml决定的。

CESM2和CESM1有着巨大的结构上和科学上的差别(这也是为什么命名从version1改到了version2,命名原则参考:https://blog.csdn.net/qq_27984679/article/details/106203471)。结构上的差别主要体现在CIME这个python框架;科学上的差别体现在CESM2中的物理参数化方案更加复杂完善等,这一点从计算时间上就有所体现:同样跑2个月,CESM1.0跑F_2000(3*24,tianhe2)大概5min,B_2000(11*24,tianhe2)大概15min,CESM2跑BHIST(6*24,hpccube)大概5h+。

CESM2具体的可以参考另一篇:https://blog.csdn.net/qq_27984679/article/details/107118480


总结:

如果运行出现bug,很可能是两个原因:

(1)inputdata文件不全,check_input_data文件是在的,但实际上可能是只下载了部分。在cesm.log*文件末尾查看堆栈追踪,找到最后一个能打印出文件名的*.F90,把filename打印到cesm.log*文件中,由此定位出存在问题的文件并重新下载。

(2)核数设置有问题。在env_mach_pes.xml中修改。

关于超算上批处理问题的一些debug,可以参考:https://hpc-help-manual.readthedocs.io/zh_CN/latest/

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

J同学的大气笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值