|On this page|
This node can be used to cook a ROP node or network using TOPs in either the current .hip file or an external file. It will create one work item per frame, based on the frame generation parameters.
The work items can optionally be batched into a single job for all frames, or divided into smaller groups of frames. Each batch is cooked as a single job on the farm or locally. Batching all frames into one job is typically used for simulations so that simulation data can be kept in memory rather than cached to disk. Smaller batch sizes such a 4 frames per job can be useful when cooking a ROP that cooks quickly to avoid overhead loading the .hip file.
The path to the .hip file that contains the ROP node.
The name of the parameter on the target ROP node that contains the output
file path. For example, when used with a ROP Geometry node this attribute
will be set to
The ROP node path within the .hip file.
If the ROP is contained within a TOP asset, such as the ROP Geometry node, then this attribute is set to the path to that TOP node.
When doing a distributed sim, this is set to the path to the Control DOP node.
When doing a distributed sim, this attribute is set to the identifier for the shared sim tracker process.
When doing a distributed sim, this attribute is set to the hostname of the machine that has the distributed sim tracker.
When doing a distributed sim, this attribute is set to the port used to
connect to the sim tracker. Together with ths
The start, end and increment frame range values associated with the work item. If the work item is in a batch, these values will refer to the range for the entire batch.
When doing a distributed sim, this attribute is set to the slice number associated with the work item.
The type of distributed since being used, set to either Particles (0) or Volumes (1).
When using Volume slices, this attribute is set to the x, y and z slice divisions.
When using the ROP Fetch to cook a tiled Mantra render, this value is set to the render tile index associated with the work item.
Work Item Generation
Whether this node generates static or dynamic work items. You should generally leave this set to "Automatic" unless you know the node’s work items can be computed statically, or that they need to be generated dynamically.
This node always creates dynamic work items: it waits until the upstream work items are known, and generates new work items from the upstream work items.
This node always creates static work items: it creates the number of work items it thinks it needs based on the parameters (and any upstream static items) before the network runs.
If the input is static (a static processor, or a partitioner with only static inputs, or a mapper), this node generates static work items, otherwise it generates dynamic work items.
How the processor node handles work items that report expected file results.
If the expected result file exists on disk, the work item is marked as cooked without being scheduled. If the file does not exist, the item is scheduled as normal.
If the expected result file exists on disk, the work item is marked as cooked without being scheduled. Otherwise the work item is marked as failed.
Work items are always scheduled and the excepted result file is ignored, even if it exists on disk.
The path to the ROP node or network that will be cooked by this TOP node.
Output Parm Name
This parm can be used to specify the name of the output file parm on the target ROP node. By default, PDG is able to to automatically determine the output name based on the type of ROP, for standard ROP nodes shipped with Houdini. When using a custom ROP or a ROP that PDG fails to detect automatically, this parameter should be set to the string name of the output parm on the ROP specified in ROP Path.
External HIP File
The path to the .hip file that contains the ROP node. When selecting a ROP in the current file it is not necessary to specify this parameter.
This is typically used when generating a .hip file procedurally as part of an earlier step in the TOP network.
Determines how the TOP node creates work items and executes. When using Single Frame the node will create one work item for each upstream frame. When using Frame Range the node creates one work item per frame in the range, for each upstream work item.
The node will create a single work item per upstream item, and will set the new work item’s frame to match the upstream item’s frame. If there are no input nodes then a single item set to frame 1 will be created. The single frame value can be overridden using the Override Frame parameter.
For each upstream work item, the node will create the full frame range of work items. If there are no upstream items, the node will create one set of items for the specified frame range.
When this parameter is enabled, it overrides the frame used with the Single Frame Evaluation mode.
The frame start, end and step size to use when Frame Generation is set to Frame Range.
Cook Frames as Single Work Item
When Evaluating Using is set to Frame Range this toggle can be used to group the work for all frames into a single work item. This option is typically used when cooking a ROP that produces an FBX, Alembic or USD file that contains multiple frames of data in the same file.
Expand Input Files Across Frame Range
When Evaluating Using is set to Frame Range this toggle can be used to spread the input file list list across the frame range.
For example, if the upstream work item has 100 output files and the frame range on this node is set to 1 to 50, each work item in this node will have 2 input files. The first work item will have file 1 and file 2, the second work item will have file 3 and file 4, etc.
All Frames in One Batch
When this toggle is enabled, work items from the same frame range are grouped into a batch that is scheduled as a single job. This is used for simulations where each frame depends on the previous frame, and it is advantageous to keep everything in memory.
Frames per Batch
By default, when this parameter is at 1 each work item is cooked as a separate job. When this parameter is set to a value greater than 1, work items are grouped into batches.
Cook Batch When
Determines when batches of frames are scheduled. By default the batch will be scheduled once the dependencies for all frames are cooked, however it is possible to schedule the batch as soon as its first frame can run.
All Frames are Ready
The batch will only be scheduled once all dependencies on all frames in the batch are satisfied.
First Frame is Ready
The batch will be scheduled as soon as its first frame is ready. This is possible because the ROP wrapper script used by PDG will ensure that subsequent frames correctly wait for their dependencies. This is done by communicating back to PDG as the job is running to check the status of the dependencies before each frame.
This incurs slightly more network overhead, and requires ongoing communication between the job and PDG. This option is not available when cooking a ROP Composite node since COP files nodes must be able to load their entire input file sequence on the first frame.
When this toggle is enabled, the node will treat the target ROP as part of a distributed simulation. This enables the parameters for configuring a distributed sim, and disables the frame generation parameters.
The control DOP for the distributed sim.
The type of slicing used for the distributed sim. Can be either Particles or Volumes.
When using the Particles slice type, specifies how many slices there are.
When using the Volumes slice type, determines the x, y and z volume divisions for the simulation.
TOP Scheduler Override
This parameter overrides the TOP scheduler for this node.
Work Item Priority
This parameter determines how the current scheduler prioritizes the work items in this node.
Inherit From Upstream Item
The work items inherit their priority from their parent items. If a work item has no parent, its priority is set to 0.
The work item priority is set to the value of Priority Expression.
Node Defines Priority
This parameter is only available when Work Item Priority is set to Custom Expression.
This parameter specifies an expression for work item priority. The expression is evaluated for each work item in the node.