CarpetIOASCII currently transfers all patches from all processes to the io process which then discard everything that does not need to be output for 1d or 2d output. Technical details:
The commstate loop in line 660 of ioascii.cc uses data_ext to call copy_from() on tmpdatas which were also created using data_ext. data_ext is set to light_boxes[...].exterior while the actual output extent is given by ext as returned by GetOutputBBox.
If I run the attached parfile with "mpirun -n 4 cactus_sim ioascii.par", then I get output from only components 0 and 2 but not 1 and 3 in the x.x.asc file. However, adding some poisoning and debug output to ioascii.cc I seem to receive all data from all components (patch attached as well) even those of which no data makes it into the output file.
Keyword: CarpetIOASCII