Limited cores can be used for SWAN in the COAWST package

Bug reports, work arounds and fixes

Moderators: arango, robertson

Post Reply
Message
Author
wolfegg
Posts: 11
Joined: Mon Nov 13, 2017 8:42 pm
Location: Louisiana State University

Limited cores can be used for SWAN in the COAWST package

#1 Post by wolfegg » Sun Mar 29, 2020 12:37 am

Hi all,

Recently, I encounter a problem regarding to the number of cores that can be used for SWAN model (the one in the COAWST package).

I can only use 30 cores to run my SWAN_only case. But I can use up to 200 cores for the SWAN4120 (not that in the COAWST package). Are there any bugs in the COAWST-version SWAN source codes?

------------------------------------------------------------------------
My Domain: Curvilinear grid with 542 grids in x direction, and 437 grids in y direction. There are many land points in my domain (see the white area in the first attached figure).
Image
The second attached file is my swan.in file.
------------------------------------------------------------------------
Machine environment:
I use
(1) a Linux machine.
(2) intel64-ifort compiler
(3) mpich2 library for mpirun
(4) use netcdf4

I only "# define SWAN_MODEL" in my header file.


Do anyone know what may be the causes?


Thanks,
Dan
Attachments
swan_Barataria.in
(2.77 KiB) Downloaded 21 times
BRT_domain_grid_trim.png

wolfegg
Posts: 11
Joined: Mon Nov 13, 2017 8:42 pm
Location: Louisiana State University

Re: Limited cores can be used for SWAN in the COAWST package

#2 Post by wolfegg » Sun Mar 29, 2020 3:20 am

And inside my error file Errfile01-001:

Error : command READ BOT or READ UNSTRUC must precede this command

-------------
The PRINT file:
...
...
** Error : command READ BOT or READ UNSTRUC must precede this command
** Error : Data field skipped:/work/you3/output/Barataria/exp40_1/swan_rst.dat

COMPUTE NONSTAT 20120801.000000 3600 SEC 20130527.000000
** Severe error : no valid comp. grid; check command READ BOT or READ UNSTRU
** No start of computation because of error level: 3
** To ignore this error, change [maxerr] with the SET command
** No continuation of computation because of error level: 3
** No continuation of computation because of error level:
** No continuation of computation because of error level: 3
** No continuation of computation because of error level:

jcwarner
Posts: 885
Joined: Wed Dec 31, 2003 6:16 pm
Location: USGS, USA

Re: Limited cores can be used for SWAN in the COAWST package

#3 Post by jcwarner » Sun Mar 29, 2020 7:28 pm

SWAN tiles its domain by dividing the longest edge into the number of cores. So your longest edge is 542 and that happpens to be in the x-dir, divide by 30 gives around 18. so each tile is 18x437.
for coawst i need to have the tiles be square, so that we can combine them with roms grid to determine the mct exchanges.
for swan from the swan site, it will remove the dry cells and be able to use more processors, but in coawst i dont allow this in order to keep the grid rectangular.
another issue is that each tile needs to have at least one computationally active cell. it looks like the first 18 or so columns on the left are all land. So when you use (lets say) 40 cores, the tiles will be 9x437 and the first 9 columns are all land and swan will not like that.
so...
i thought we had fixed part of this so that a swan tile could be all land, but perhaps not. i can look into that again.
in the mean time, is there a reason why the grid has all that land on the left side? what if you started the grid around 90 - 18 W?

wolfegg
Posts: 11
Joined: Mon Nov 13, 2017 8:42 pm
Location: Louisiana State University

Re: Limited cores can be used for SWAN in the COAWST package

#4 Post by wolfegg » Sun Mar 29, 2020 7:52 pm

jcwarner wrote:
Sun Mar 29, 2020 7:28 pm
SWAN tiles its domain by dividing the longest edge into the number of cores. So your longest edge is 542 and that happpens to be in the x-dir, divide by 30 gives around 18. so each tile is 18x437.
for coawst i need to have the tiles be square, so that we can combine them with roms grid to determine the mct exchanges.
for swan from the swan site, it will remove the dry cells and be able to use more processors, but in coawst i dont allow this in order to keep the grid rectangular.
another issue is that each tile needs to have at least one computationally active cell. it looks like the first 18 or so columns on the left are all land. So when you use (lets say) 40 cores, the tiles will be 9x437 and the first 9 columns are all land and swan will not like that.
so...
i thought we had fixed part of this so that a swan tile could be all land, but perhaps not. i can look into that again.
in the mean time, is there a reason why the grid has all that land on the left side? what if you started the grid around 90 - 18 W?
Thanks Dr. Wanner!
Well, if this problem cann't not be solved right now in term of the codes, I think I may need to rotate my SWAN grid a little bit to have less lank cells. I am running a ROMS and SWAN coupled case with 30 cores for SWAN and 400 cores for ROMS. The speed seems to be accetable. But, we'll see if the SWAN grid rotation is needed for a faster computation.

I thank you so much for the reply, since I have struggled with the SWAN tile stuffs for a while.

Thanks,
Dan

Post Reply