next up previous contents
Next: Output of Hyperslab Data Up: IOFlexIO Previous: IOFlexIO Parameters   Contents

Serial versus Parallel Output

According to the ouptput mode parameter settings (IO::out_mode, IO::out_unchunked, IO::out_proc_every) of thorn IOUtil, thorn IOFlexIO will output distributed data either

  • in serial into a single unchunked file
      IO::out_mode      = "onefile"
      IO::out_unchunked = "yes"
    
  • in parallel, that is, into separate files containing chunks of the individual processors' patches of the distributed array
      IO::out_mode      = "proc | np"
    
The default is to output data in parallel, in order to get maximum I/O performance. If needed, you can recombine the resulting chunked datafiles into a single unchunked file using the recombiner utility program. See section J1.8 for information how to build the recombiner program.

If you have a lot of different variables to recombine you can use the following Bourne shell commands to recombine them. This assumes that the chunked output files for each variable are located in a subdirectory <varname>_<vardim>d/. The recombined output file <varname>.ieee would then be placed into the current working directory:

  for var in *_3d ;                                                          \
    do                                                                       \
    {                                                                        \
      if [ ! -r $var.ieee ] ; then                                           \
        ieee_recombiner $var/$var.file_0.ieee $var.ieee;                     \
      fi;                                                                    \
    };                                                                       \
    done





next up previous contents
Next: Output of Hyperslab Data Up: IOFlexIO Previous: IOFlexIO Parameters   Contents