NCAR / ParallelIO

A high-level Parallel I/O Library for structured grid applications
Apache License 2.0
136 stars 53 forks source link

Error writing decomp #1779

Open jedwards4b opened 3 years ago

jedwards4b commented 3 years ago

The box rearranger is generating an error (corrupted double-linked list) when the first decomp dimension is 1.
This can be reproduced with the pioperf program and https://svn-ccsm-piodecomps.cgd.ucar.edu/trunk/288/piodecomp288tasks03dims01.dat

Namelist for test is

&pioperf
decompfile=   '/glade/work/jedwards/sandboxes/piodecomps/288/piodecomp288tasks03dims01.dat',
 pio_typenames = 'netcdf'
 rearrangers = 1
 nframes = 1
 nvars = 1
 niotasks = 8
 /
jedwards4b commented 3 years ago

Workaround is to change line 782 of pio_rearrange.c from

totalrecv = iodesc->llen;

to

totalrecv = max(totalrecv,iodesc->llen);

but this would seem to indicate that iodesc->llen is calculated incorrectly for this decomp. Investigating.

jedwards4b commented 3 years ago

I found that the DOF in question is ambiguous and should generate an error. I have opened another issue in the model component that generated this dof: https://github.com/ESCOMP/CAM/issues/282

edwardhartnett commented 3 years ago

OK, so can we close this issue?