Houdini 18.5 Nodes TOP nodes

Partition by Node TOP node

Partitions work items based on their node

On this page
Since 17.5

This node partitions work items based on the input nodes.

Tip

The $HH/help/files/pdg_examples/top_partitioners example shows how you can use common partitioner features like targeted partitioning, controls for merging attributes, and splitting by attribute.

Parameters

Node

Partition For Each

Determines how the input work items should be partitioned.

Input Node

A partition is created for each input node, and all work items from that node are put into the partition.

Input Work Item Tuple

A partition is created for each tuple of input work items. The first work item from each node goes into the first partition, the second work item from each node goes into the second partition, etc.

Input Work Item Combination

A partition is created for each unique combination of input work items.

Custom Sort Key

When this parameter is enabled, a custom sort key can be specified as an expression. By default input work items are sorted based on their index. Work items from each node are sorted as a group prior to being partitioned.

The sort key is not used when Partition For Each is set to Input Node, since all work items from a given node will go into the same partition

Partial Partitions

This toggle is only available when using the Input Work Item Tuple partition option. When this toggle is enabled it becomes possible for a partition to not have an item for each input node. This can occur when input nodes have a different number of work items.

For example if the first input has 2 work items and the other has 4 work items, a total of 4 partitions will be created when this toggle is enabled. The first two will have two items in them: item 1 and item 2 the input nodes, respectively. The remaining two partitions will only have 1 work item each.

Merge Attributes

These parameters control how attributes from input work items are merged onto the partitions produced by the node.

Merge Operations

Defines the number of attribute merge operations to perform on the partitioner node. The operations are used to merge attributes from work items in the partition onto the partition itself. Operations are performed in descending order. Attributes are merged using the first operation with a pattern that matches the attribute.

Apply Operation

Specifies the operation to perform to merge incoming attributes onto the partition. Each operation only applies only to the subset of attributes matched using the corresponding To Attributes parameter.

The following operations are available:

Ignore

Matching attributes are ignored and will not appear on the partition.

First Value

The value of each matching attribute on the first work item in the partition is kept, and values on subsequent work items are ignored

Last Value

The value of each matching attribute on the last work item in the partition is kept.

Unique Values

The unique values for each matching attribute are merged into an array. Duplicate values are discarded.

Append to Array

The values for each matching attribute are appended to an array for that attribute. All attribute values from all work items are kept.

Minimum

The minimum value for each matching attribute is kept.

Maximum

The maximum value for each matching attribute is kept.

Sum

The sum of the values in each matching attribute is stored on the partition.

Average

The average value of each matching attribute is stored on the partition.

Mode

The most common value in each matching attribute is kept.

Median

The middle value in each matching attribute is kept.

To Attributes

Specifies which attributes the corresponding Apply Operation parameter should apply to. This field can use the Attribute Pattern Syntax to specify multiple attributes.

Advanced

These are advanced parameters that provide finer control over the behavior of the partitioner.

Partition When

Determines when the partitioning step is performed on the input work items.

Input Items are Generated

Upstream work items are partitioned once all of them have been generated

Input Items Are Cooked

Upsteam work items are partitioned once all of them are cooked. This may be required when the partitioning scheme is based on the results of the work items' execution.

This makes this partitioner behave like a Wait for All node except that it may create multiple partitions.A

Partition Target(s)

Determines which node or nodes(s) should target. Work items in the target nodes are partitioned as soon as they're generated even if the target nodes are not a direct input to this node. The descendants of the target work items are added to the partitions when they become available.

Direct Input Nodes

The partitioner uses work items from its direct input nodes. This is the default behavior

Upstream Static Nodes

The partitioner will skip over dynamic input nodes and partition work items from the nearest upstream static nodes.

Custom Target Node

The partitioner will use the node specified using the Custom Target Node parameter.

Custom Target Node

Specifies the target TOP node for the partition when Partition Targets is set to Custom Target Node. The partition scheme is applied to the work items in the target TOP node instead of this node’s input work items. The target TOP node must be in the same graph and above this node.

Split by Attribute

When on, the node splits input work items by the specified attribute(s) before partitioning them. The partitioning logic is evaluated on the list of work items for each distinct attribute value. Work items with different attribute values are always put into different partitions. Multiple attribute names can be specified as a space-separated list.

Missing Attribute

Determines how the node handles work items that are missing the split attribute.

This parameter is only available when Split by Attribute is on.

Ignore Work Item

Work items that are missing the split attribute are not put into any of the partitions.

Partitioner Defines Behavior

The partitioner node determines what happens to work items that are missing the split attribute. Typically a partitioner node that exposes this option will rename this menu entry to describe the actual operation it performs.

Add Work Item to All Partitions

Work items that are missing the split attribute are put into all of the partitions.

Allow Partial Matches

When Split by Attribute is set to a list of attribute names, this parameter determines how work items with only some of the attributes should be processed. If partial matches are enabled then work items will be added to split groups based on the attributes that do exist. Otherwise, work items with only a subset of the attributes will be excluded from the partitioning step.

Sort Contents By

Determines the order that work items are sorted in when accessing the partitions on this node. This also affects the sort order of output files on the partition.

None

No sorting is applied. The work items in the partition are handled in no particular order.

Work Item Index

Work items in the partition are sorted based on their index.

Input Node Order

Work items in the partition are sorted based on the order of input nodes wired into this node. If two work items are from the same input, they are then sorted by index.

Attribute

Work items in the partition are sorted based on the attribute specified in the Sort Attribute field parameter.

Sort Direction

Determines whether the work items in this node’s partitions are sorted in ascending or descending order.

Sort Attribute

Specifies the name of the attribute to sort by.

This parameter is only available when Sort Contents By is set to Attribute.

Examples

PartitionByNode Example for Partition by Node TOP node

This example demonstrates how to use the partition by node in PDG/TOPs.

See also

TOP nodes