xenial (1) rpiece.1.gz

Provided by: radiance_4R1+20120125-1.1_amd64 bug

NAME

       rpiece - render pieces of a RADIANCE picture

SYNOPSIS

       rpiece  [  -v  ][  -x  xres ][ -y yres ][ -X xdiv ][ -Y ydiv ][ -F|R syncfile ][ -T timelim ] [ $EVAR ] [
       @file ] [ rpict options ] -o picture octree

DESCRIPTION

       Rpiece renders a RADIANCE picture a piece at a time, calling rpict(1) to do the  actual  work.   This  is
       useful  for running multiple rpict processes on cooperating machines to render a single picture, which is
       a shared file specified with the -o option.  The overall picture dimensions will  be  xres  by  yres  (or
       smaller, depending on the -pa option and other view options), and the picture will be rendered in xdiv by
       ydiv pieces.

       There are two basic methods for telling rpiece which piece(s) of  a  picture  to  render.   The  explicit
       method  is to write on the standard input the X and Y position of the desired piece(s), where X runs from
       zero to xdiv-1 and Y runs from zero to ydiv-1.  (The lower left piece of a picture corresponds  to  (0,0)
       in  this  system.)   Alternatively,  the  implicit  specification  method  uses a synchronization file to
       determine which piece is to be rendered next.  Specified with the -F option, syncfile initially  contains
       the  values  for  xdiv  and  ydiv,  so the -X and -Y options are unnecessary.  (However, they are used if
       syncfile does not exist.)  The first rpiece process puts a lock on syncfile  and  modifies  its  contents
       before  starting  work  on  the first piece of the image.  It writes the X and Y position of the piece it
       will work on, so the next rpiece process to modify syncfile will start  on  the  next  piece.   (When  it
       finishes  with  its  piece, it appends the index to the end of syncfile.)  This procedure continues until
       all the pieces are done, at which point all of the rpiece processes will terminate.

       The -R option may be used instead of -F if some of the pieces were  not  properly  finished  by  previous
       (killed) runs of rpiece.  This option should be used by at most one rpiece process, which must be started
       first and with no other rpiece processes running or else it will rerender the same pieces other processes
       have  begun.   Once  the  recover  process  is started, you may start other rpiece processes using the -F
       option to run simultaneously.  If some processes die during execution, leaving one or more  half-finished
       pieces in the picture even though the other processes think the work is done, you may run a single rpiece
       with the -R option by itself to repair the holes.

       The -v flag switches on verbose mode, where rpiece reports to the standard output after each piece begins
       and after each piece is finished.

       Options  may  be  given  on the command line and/or read from the environment and/or read from a file.  A
       command argument beginning with a dollar sign ('$') is immediately replaced by the contents of the  given
       environment  variable.  A command argument beginning with an at sign ('@') is immediately replaced by the
       contents of the given file.

EXAMPLE

       First rpiece process is started on the machine "goober":

         goober% echo 1 8 > syncfile
         goober% echo -F syncfile -x 1024 -y 1024 -vf view -o picture octree > args
         goober% rpiece @args &

       Second rpiece processes is started on the machine "sucker":

         sucker% rpiece @args &

NOTES

       Due to NFS file buffering, the network lock manager is employed to guarantee consistency  in  the  output
       file  even  though  non-overlapping  writes are used.  This would tend to slow the process down if rpiece
       were to wait for this I/O to complete before starting  on  the  next  piece,  so  rpiece  forks  separate
       processes  to  hang around waiting for I/O completion.  The number of processes thus designated is set by
       the MAXFORK macro in the program (compiled in the src/util directory).  If the fork call  is  slow  on  a
       system,  it  may actually be better to set MAXFORK to zero.  In other cases, the network lock manager may
       be so slow that this value should be increased to get the best utilization.

       The output picture is not run-length  encoded,  and  can  be  quite  large.   The  approximate  size  (in
       kilobytes) can be computed by the simple formula:

         filesize = xres*yres/256

       Make sure that there is enough space on the filesystem to hold the entire picture before beginning.  Once
       the picture is finished, the ra_rgbe(1) program with the -r option may be used to convert to a run-length
       encoded  picture  for  more  efficient  storage,  although  pfilt(1) or any of the other Radiance picture
       filters will do the same thing.

       The ALRM signal may be used to gracefully terminate an rpiece  process  after  it  finishes  the  current
       piece.   This  permits  other  currently  running  or subsequently started rpiece process(es) to continue
       rendering the picture without loss.  The -T option  will  send  the  ALRM  signal  to  rpiece  after  the
       specified  number  of  (decimal)  hours.   This is the best way to force a time limit on the computation,
       since information will not be lost, though the process may continue for some time  afterwards  to  finish
       its current piece.

BUGS

       This  program  may  not  work  on some systems whose NFS lock manager is unreliable.  In particular, some
       System V derivative UNIX systems often have problems with the network lock manager.   If  the  output  is
       scrambled or rpict aborts with some ambient file related problem, you should just remove the ambient file
       and go back to normal rendering.

AUTHOR

       Greg Ward

SEE ALSO

       getinfo(1), pfilt(1), ra_rgbe(1), rpict(1), ximage(1)