Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

Multi-instance run

yhdchoi

YONGHAN CHOI
New Member
Hello,

I tried to run CESM with 20 instances (my final goal is to run CESM within DART cycling framework).

If I set as below,
NTASKS_ATM=-2 (each node has 24 processors)
NINST_ATM=20
NINST_LAYOUT_ATM=concurrent
MULTI_DRIVER=TRUE

then,
I found that I need 40 nodes to run my case.

However, I have only 25 nodes on my computing server.

Could you let me know how I can run CESM with 20 instances?

Thank you for your kind help!
 

fischer

CSEG and Liaisons
Staff member
This depends on the compset and resolution you're running at. A 1 degree B1850 will run out of memory pretty quickly when running 20 instances.
What you should try doing is running just one instance on one node, just to see if that'll work.

You could also try setting NINST_LAYOUT_ATM=sequential, and for all of the other components. I've never tried this, so not sure how well
it'll work. But I would believe it would be pretty slow.
 

yhdchoi

YONGHAN CHOI
New Member
This depends on the compset and resolution you're running at. A 1 degree B1850 will run out of memory pretty quickly when running 20 instances.
What you should try doing is running just one instance on one node, just to see if that'll work.

You could also try setting NINST_LAYOUT_ATM=sequential, and for all of the other components. I've never tried this, so not sure how well
it'll work. But I would believe it would be pretty slow.
Hello Fischer,

Thank you for your kind answers.

I have one additional question.
Should I set MULTI_DRIVER=TRUE when I do multi-instance run?

If not, what is the difference between MULTI_DRIVER=TRUE and FALSE?

Thank you.
 

fischer

CSEG and Liaisons
Staff member
You shouldn't need to set MULTI_DRIVER=TRUE. Setting MULTI_DRIVER to TRUE uses multiple instances
of the coupler, using FALSE uses one instance of the coupler.

Chris
 

yhdchoi

YONGHAN CHOI
New Member
You shouldn't need to set MULTI_DRIVER=TRUE. Setting MULTI_DRIVER to TRUE uses multiple instances
of the coupler, using FALSE uses one instance of the coupler.

Chris
Hello Chris,

Thank you for your answer. I will try your suggestions.

Yonghan
 
Top