netrender - render an image remotely, optionally as parallel subframes, using one or more Network RenderMan servers.
SYNOPSIS
netrender
[
options
]
ribfiles
DESCRIPTION
netrender is a program that passes a sequence of RenderMan Interface
Bytestream (RIB) requests to one or more Network RenderMan render servers in
order to generate an image. The environment of the
netrender program consists of all RenderMan shaders and textures as well
as the complete display environment. This means files and windows will be opened
locally, not on the Network RenderMan render servers.
The simplest valid
netrender command is:
netrender ribfiles
which submits the named RIB files to the Network RenderMan render server on
the local host.
OPTIONS
- -h hostname
-
Specifies the computer hostname on which to find the Network RenderMan render
server. The -h option may be specified more than once to have the
frame processed in parallel by several instances of the renderer, possibly
distributed around the network. The same host may appear more than once, to
make use of several CPUs, for example. There is also a shorthand for specifying
several instances of the same host in one option argument:
":-h hostname:count". Some examples:
netrender -h venus -h mars frame1.rib
netrender -h saturn -h saturn frame2.rib
netrender -h saturn:2 frame2.rib
netrender -h jupiter:4 -h neptune:2 frame3.rib
If the
-h option is absent, the environment variable
RENDERHOST will be used as the hostname. If neither
-h nor RENDERHOST specifies a host, the Network RenderMan
render server on the host where
netrender was invoked will be used.
- -f
-
Tells the remote renderer that it should attempt to open shader and texture
files itself "locally" on the server host. For example, the
files may actually be resident on the server by prior arrangement, or
the files may be on some shared fileserver and are accessible with
local-file semantics (.e.g. nfs or mounted network drive).
If the server fails to find a file locally, it defers back to the netrender
client context to open and copy the file. The native network file system
will usually be much higher performance than netrender's own simple
point-to-point transfers, and furthermore will likely benefit from OS caching
strategies.
- -F
-
This Fast mode is similar to the "-f" option above, but
all files including RIB files are required to be accessible
through local i/o mechanisms on the server; no attempt is made to copy them
through netrender's own protocol. The emphasis here is on improving the
performance of rendering subframes in parallel on several hosts; and especially
avoiding the approximately serial transfer time of multi-gigabyte RIB files to
each server through netrender's own simple protocol. The caller must arrange
for the RIB file to be network-accessible on all servers using the specified
filename.
The "-F" option also enables coalescing to threads when a
particular hostname is given more than once with the "-h" option.
For example, if "-F -h hostname:6" is given, then a single
"prman -t:6" will launched on the specified host, rather than
launching the typical six independent single-threaded processes there.
As usual with multi-threaded renders, site-developed plugins must be
thread-safe in this mode.
- -progress
-
Causes percent-done status to be written to the terminal. Each new status
message uses carriage-return to overwrite the previous value. There is an
alternate form, "-Progress" which write simple newline-delimited
lines to the terminal; note that each remote server will generate their
own percentage values based on their assigned work, and the processor
index will precede each message.
- -R keyword
-
Sends the specified word (or quoted list of words) to the server for use
in selecting a particular version of PRMan to run, or environment to
establish. The keywords can be arbitrary, and are processed by a
site-modifiable procedure in alfserver.ini on each server. Typically
they are used to establish a site-defined environment prior to launching
a particular version of the renderer. For example: several shows may
be in production at once, each locked down to a particular set of tools;
the tools may all be accessible from each server, and this option allows
a single alfserver to multiplex requests for frames from each show on a
per-request basis.
- -rif plugin [-rifargs arg arg ... -rifend]
-
Execute the given rif plugin and arguments on the RIB stream while rendering.
- -p portnumber
-
This causes
netrender to send the network request on the specified network port
portnumber. This overrides port values set by any other means. If -p
is absent,
netrender will call
getservbyname asking for the port number for service "alfserver"
and protocol "tcp". This may be set by a system adminstrator either
in the local file
/etc/services or through the NIS (or Yellow Pages) system. If no port is
found through
getservbyname the port number will be set from the /nrmserver/port
line in the rendermn.ini file. If no port number is found by any of
these means, port 1500 will be used.
ENVIRONMENT
The following environment variables are used (if set) by
netrender:
RMANTREE path to the base directory of the RenderMan software
default: %RMAN%
RMANCONFIG path to the configurations defaults file
default: ${RMANTREE}/etc/rendermn.ini
RENDERHOST name of default Network RenderMan server host
FILES
${RMANTREE}/etc/rendermn.ini renderer configuration defaults file
${RMANTREE}/etc/messages directory containing error message files
${RMANTREE}/etc/dspyserver RenderMan display server for image output
${RMANTREE}/lib/shaders RenderMan standard shaders directory
${RMANTREE}/bin/alfserver the netrender server executable
${RMANTREE}/etc/alfserver.ini server configuration defaults file
SEE ALSO
alfserver(1),
PhotoRealistic RenderMan User's Manual(1),
RenderMan Interface Version 3.1(1)
Pixar Animation Studios
(510) 752-3000 (voice)
(510) 752-3151 (fax)
Copyright © 1996-
Pixar. All rights reserved.
RenderMan® is a registered trademark of Pixar. |