打开求值工具包
通过求值工具包,可分析和了解如何以最佳方式使用并行求值模式,从而加速动画运行。激活“求值工具包”(Evaluation Toolkit)中的选项以操纵“求值管理器”(Evaluation Manager)的所有方面,其中包括启用调试模式和输出。另请参见使用求值模式测试性能。
注: 此处提供的信息仅供参考。如果需要有关这些流程的技术背景信息,请参见
使用并行 Maya 或
求值器参考,其中包含某些自定义求值器的详细描述。
配置
包含许多设置,支持您配置求值工具包所提供的工具的行为。
- Graphviz 选项
-
- 使用 Graphviz 系统安装(Use Graphviz system installation)
-
激活此选项后,将使用系统的 Graphviz 安装,而不是
Maya 随附提供的安装。
注: 为了让 Maya 找到 Graphviz 安装,请确保包含 Graphviz 可执行文件的 Graphviz 文件夹位于 PATH 环境变量中。请参见
标准路径。
- 显示 Graphviz 版本(Show Graphviz Version)
-
显示 dot -v 命令的输出,该命令用于报告 dot 命令软件版本。
模式
从“求值模式”(Evaluation Mode)菜单中选择适当的求值模式。
- 求值模式(Evaluation Mode)菜单
-
-
DG
- 对您的场景使用基于依存关系图的求值模式。(另请参见依存关系图。)在 Maya 2016 之前,这是默认的求值模式。
-
串行(Serial)
- 使用求值管理器,但是将求值限制到单个核心(串行求值)。使用“串行”(Serial)可排除场景故障,因为它使场景保真度优先于性能,以便您可以找出求值错误。
注: 与
“DG”模式相比,有时场景在
“串行”(Serial)模式下运行得更慢。这是因为与
“DG”模式相比,
“串行”(Serial)模式对更多的节点求值。由于此详细求值,如果场景在
“串行”(Serial)模式下看起来不正确,则它不大可能在
“平行”(Parallel)模式下正常工作。
有时“串行”(Serial)模式下的不正确求值是由自定义插件导致的。
- 串行(未缓存)(Serial (uncached))
- 与“串行”(Serial)(如上所述)类似,但未缓存,将重新确定每个帧中的求值顺序。不建议使用。
-
并行(Parallel)
- 并行求值并使用所有可用的核心对场景求值。如果此模式导致场景问题,则禁用它并返回到上一标准:DG 求值模式。
请参见分析场景以提高性能。
此模式在默认情况下处于活动状态。
- GPU 覆盖(GPU Override)
- 与求值管理器一起在“串行”(Serial)或“平行”(Parallel)求值模式下加速变形。如果场景具有标准 Maya 变形器并且网格几何体是密集的,则这可以提高性能。结果将基于场景中的变形器和网格密度而变化。
注: “GPU 覆盖”(GPU override)仅适用于 Viewport 2.0,对 OSX 上的 Quadro 4000 显卡不起作用。
- 您可以在使用并行 Maya 中找到有关 GPU 覆盖的技术说明。
- 在求值图中包括控制器(Include Controllers in Evaluation Graph)
- 构建时在求值管理器中激活/禁用预填充控制器机制。
- 高级(Advanced)
-
- 操纵(Manipulation)
- 切换求值管理器用于操纵。仅在“串行”(Serial)和“平行”(Parallel)模式下有效。
平视显示仪(Heads Up Display)
可使用以下平视显示仪 (HUD) 选项在视图面板中显示求值和帧速率信息。有关更多“平视显示仪”(Heads Up Display)选项,请参见平视显示仪 (HUD) 选项和在视图面板中显示场景信息 (HUD)。
-
求值(Evaluation)
- 指示当前的求值模式。请参见“首选项 > 动画”(Preferences > Animation)中的“求值”(Evaluation)以更改求值节点。
-
帧速率(Frame Rate)
-
在右下角显示当前视图的帧速率(单位:每秒帧数 (FPS))。默认设置为禁用。
调试
使用此区域中的这些选项,可以确定场景的问题区域。
- 验证跟踪(Validation Trace)
- 切换用于跟踪无效求值图路径的跟踪对象。它将记录违反求值图中所示依存关系的数据访问。这些意外访问可能会导致求值出错且不稳定,如崩溃。
- 输出文件包含在每个播放帧期间检测到的缺少的依存关系。这仅适用于“串行”(Serial)模式。
- 默认情况下,跟踪结果将保存在 Maya Temp 目录下的 _MayaEvaluationGraphValidation.txt 文件中,但您可以指定其他位置。使用 getenv("TEMP") MEL 命令查找计算机上的临时目录。
- “计算的节点”(Computed Nodes)跟踪
- 通过切换输出所计算节点的跟踪对象,对计算路径执行高级跟踪。这仅适用于“DG”和“串行”(Serial)模式。
- 跟踪结果将保存在 Maya 运行时目录下的 _Trace_Compute.txt 文件中。使用 getenv ("MAYA_LOCATION") MEL 命令查找该运行时目录。
- 启动分析器(Launch Profiler)
- 打开分析器。这一工具通过记录和描述每个重要事件(例如,求值任务)消耗的时间量,有助于找出场景中的性能瓶颈。
- 启动分析窗口(Launch Analytics window)
- 打开“分析”(Analytics)窗口,该工具通过对场景运行脚本并报告找到的内容来帮助分析一个或多个场景的内容。
- 求值图检查(Evaluation Graph Inspection)
- 此部分提供了一组工具,可用于了解求值图和调度图的构造方式。
-
- 要检查的节点(Nodes to Inspect)
- 对于“求值图检查(Evaluation Graph Inspection)”部分的每个工具,您可以选择检查整个图表,此时从下拉菜单中选择“全部”(All);也可以选择只检查图表的子集,此时选择“选定”(Selected)。
- 如果选择“选定”(Selected),将会显示另一个标记为“级别深度”(Levels Deep)的字段。显示图表信息时,您通常会对节点之间的连接感兴趣。“级别深度”(Levels Deep)值告诉工具从选定节点起应包含在输出中的步数。
- 在此上下文中,“步数”表示“从一个节点到另一个节点必须在图表中遍历的连接数”。例如,如果图表连接为 A -> B -> C,则节点 B 距离 A 和 C 的深度均为 1,C 距离 A 的深度为 2。
- 为清晰起见,下面介绍的功能假定您选择的是“全部”(All)选项。
-
- 图形输出(Graphical Output)
- 此部分中的工具将提供 PDF 或 DOT 格式的输出以可视化求值图或调度图。此可视化类似于您在节点编辑器中看到的依存关系图的效果。
| 格式
|
选择要生成的输出的类型。如果设置 PDF,则图表将发送到 .pdf 文件。如果设置 DOT,则图表将发送到 .dot 文件。在这两种情况下,该工具将尝试在所生成文件的默认应用程序中打开文件,以便您可以立即查看。例如,在 Adobe Acrobat 中打开 .pdf 文件,在 graphviz 中打开 .dot 文件。
如果选中“传递归约”(Transitive Reduction)复选框,则会尝试在显示的图表中减少不必要的连接数。虽然生成过程所需时间可能长得多,但结果输出会更清晰。
|
| 输出文件
|
此字段显示文件的创建位置。默认情况下,它存储在 MAYA_LOCATION 目录中。输入新文件名,或浏览到新目录以更改位置。文件名的扩展名始终反映当前选定的“格式”(Format)
(.pdf 或 .dot)。
|
| 可视图表(Visual Graph)
|
按下“显示”(Show)按钮时,将以选择的格式生成求值图的可视表示,并且将在相应文件类型的默认应用程序中打开结果。
“添加脏栓”(Add Dirty Plugs)选项包括每个节点中被求值管理器设置为脏的所有栓的列表。通常,您不需要此细节量,但它可用于发现图表中缺少的属性依存关系
|
| 可视化调度图(Visualize Scheduling Graph)
|
按下“显示”(Show)按钮时,将以选择的格式生成调度图的可视表示,并且将在相应文件类型的默认应用程序中打开结果。
调度图与求值图不同,因为前者将多组节点组合在一起作为一个组进行求值。例如,不可见性求值器将所有不可见节点聚合在一起建立簇,并且不执行任何其他操作,而是将其作为一个整体进行求值。
使用“添加簇内容”(Add Cluster Contents)选项可以将簇节点从显示其包含的节点计数切换为按名称显示所有节点的列表。如果要查看特定自定义求值器将哪些节点聚合在一起建立簇,这会很有用。
|
- 文本输出(Text Output)
- 此部分中的工具将以 JSON 或纯文本格式提供输出以可视化求值图或调度图。
| 格式
|
有两种类型的输出。JSON 格式比较详细;以键/值形式描述所有节点信息和关系。“摘要”(Summary)格式将信息压缩为比较简洁的显示内容以便快速参考
|
| 输出位置(Output Location)
|
您可以选择将结果直接发送到脚本编辑器,也可以选择将结果发送到外部文件。脚本编辑器非常适用于快速检查场景的部分内容;外部文件最适合脱机解析和解释结果。
|
| 输出文件
|
仅当您在“输出位置”(Output Location)中选择了“文件”(File)选项时,此字段才会处于活动状态。它显示文件的创建位置。默认情况下,它将位于 MAYA_LOCATION 目录中。输入新文件名,或浏览到新目录以更改位置。
|
| 求值节点(Evaluation Nodes)
|
打印选定节点或整个场景(如果未选中任何对象)上的求值节点和连接的列表。
激活“显示脏栓”(Show Dirty Plugs)将打印在求值和计算之前求值管理器设置为脏的栓的列表。
|
| 求值节点(Evaluation Nodes)
|
按下“显示”(Show)按钮时,将以选择的格式生成求值图中所有节点的列表。这通常意味着已设置动画或作为控制器的所有节点。
使用“添加脏栓”(Add Dirty Plugs)选项可以包括每个节点中被求值管理器设置为脏的所有栓的列表。
|
| 节点调度类型(Node Scheduling types)
|
按下“显示”(Show)按钮时,将显示求值图中节点的调度类型。类型包括“并行”(Parallel)、“串行”(Serial)、“全局序列化”(Globally serialize)和“不受信任”(Untrusted)。有关详细信息,请参见使用并行 Maya。
|
| 调度图(Scheduling Graph)
|
按下“显示”(Show)按钮时,将以选定格式显示调度图的内容。
调度图与求值图不同,因为前者将多组节点组合在一起作为一个组进行求值。例如,不可见性求值器将所有不可见节点聚合在一起建立簇,并且不执行任何其他操作,而是将其作为一个整体进行求值。
使用“添加簇内容”(Add Cluster Contents)选项可以包含调度的所有簇中的节点集。如果要查看特定自定义求值器将哪些节点聚合在一起建立簇,这会很有用。
|
- 场景简化(Scene simplification)
- 检索选定对象的最小依存关系。
-
- 选择最小场景(Select minimal scene)
- 使用此选项可确定对选定对象进行求值所需的一切。
-
移除最小场景以外的所有对象(Remove all except minimal scene)
- 删除上述最小场景选择选项视为非重要的每个对象。
重要: 数据丢失!切勿在激活此选项后意外保存该版本的场景。
- 动态属性(Dynamic Attributes)
- 连接的动态属性有时会创建虚拟依存关系,从而阻止并行操作,这将抵消通过并行求值实现的任何性能增益。使用这些工具可以显示这些动态属性类型之间的连接:
-
- 打印附加连接(Print extra connections)
- 单击“打印”(Print)可显示在动态属性之间发现的连接的列表。结果将显示在脚本编辑器中。
- 移除附加连接(Remove extra connections)
- 此选项仅用于调试目的,因为它旨在帮助您了解移除附加依存关系后可能实现的性能增益。由于此选项是一种具有攻击性的工具,可能会改变求值输出,因此请慎用。
重要: 数据丢失!切勿在激活此选项后意外保存该版本的场景,因为数据将会丢失。
- 场景简化(Scene simplification)
- 检索选定对象的最小依存关系。
-
- 选择最小场景(Select minimal scene)
- 使用此选项可确定对选定对象进行求值所需的一切。
- 移除最小场景以外的所有对象(Remove all except minimal scene)
- 删除上述最小场景选择选项视为非重要的所有对象。
重要: 数据丢失!切勿在激活此选项后意外保存该版本的场景。
自定义求值器
单击每个自定义求值器旁边的复选框,以激活自定义求值。
使用
(问号)按钮可查看关联的自定义求值器支持的配置选项。请参见求值器命令参考中的 -c / -configuration 标志。
使用
(“i”)按钮可查询与关联的自定义求值器相关的信息。
使用
(“n”)按钮可打开一个窗口,用于查看由关联的自定义求值器声明的节点。
提示: 您可以使用求值器命令来查询可用/活动的求值器,或者修改当前活动的求值器。有些求值器支持使用 _nodeType_ 标志过滤出或包括特定类型的节点。有关求值器支持内容的详细信息,请查询求值器上的 _info_ 标志。
有关不可见性、冻结、动力学和变形器求值器的背景信息,请参见求值器参考。使用并行 Maya 文档中提供了更多技术详细信息。
重要: 更改默认的启用/禁用状态时,可能会导致不稳定或性能降低。请谨慎操作。
有关此处列出的
动力学求值器的信息,请参见下文的“动力学”部分。
| 自定义求值器
|
用途
|
| invisibility
|
从求值中移除不可见的节点(及其所有驱动者)。有关不可见性求值器的详细信息,请参见求值器参考。
注: 无论是否已启用该求值器,场景看起来都相同。
有关不可见性求值器的详细信息,请参见求值器参考。
|
| frozen
|
处理旨在控制对/不对场景的哪个部分进行求值的“冻结”工作流。
有关冻结求值器的详细信息,请参见求值器参考。
|
| curveManager
|
|
| timeEditorCurveEvaluator
|
处理时间编辑器的自定义曲线求值要求
|
| dynamics
|
用于对求值要求不正规的动力学节点正确求值。
有关动力学求值器的详细信息,请参见求值器参考。
|
| ikSystem
|
管理由多控制柄 IK 系统引起的复杂求值。
|
| disabling
|
禁用求值管理器(用于调试目的)。
|
|
hik
|
提升 HumanIK 装备的性能。
|
| reference
|
改进已加载/卸载引用的场景的性能。
|
| deformer
|
支持对受支持的变形器执行 GPU。变形器求值器实现了“GPU 覆盖”(GPU Override)选项。
有关变形器求值器的详细信息,请参见求值器参考。
|
| transformFlattening
|
改进长变换层次的性能。
|
| pruneRoots
|
通过一起调度各个小任务以降低调度开销,改进性能
|
动力学
配置动力学求值器。动力学求值器用于对求值要求不正规的动力学节点正确求值。
- 模式(Mode)
- 从以下五个选项中进行选择:
| 名称
|
功能
|
| 已禁用(Disabled)
|
只要场景中存在活动的动力学节点,便禁用并行求值/求值管理器。
|
| 旧版 2016(Legacy 2016)
|
重现 2016 版本的默认设置,方法是:只要已列入黑名单的节点显示在场景中,便禁用求值。
以下节点类型已列入黑名单:
- Nucleus
- pointEmitter
- rigidSolver
- rigidBody
- particle
- geoConnector
- field
- fluidShape
从其中派生的任何类型也是如此。
|
| 受支持(Supported)
|
对受支持的动力学节点实现复杂求值,只要已列入黑名单的节点显示在场景中,便禁用并行求值/求值管理器。
以下节点类型已列入黑名单:
- rigidSolver
- rigidNode
- particle(除非也是 nBase)
- fluidShape
- fluidEmitter
- dynHolder
- collisionModel
- dynController
- dynGlobals
- spring
- membrane
从其中派生的任何类型也是如此。
|
| 全部(不支持)(Everything (NOT SUPPORTED))
|
使用所有节点,甚至是有问题的节点,因为此模式不使用黑名单。
|
| 自定义(不支持)(Custom (NOT SUPPORTED))
|
此模式允许您尝试以下选项的不受支持组合。
|
- 高级(Advanced)
-
- 禁用的节点(Disabling Nodes)
- 导致并行求值/求值管理器被禁用的节点集。
- 已处理的节点(Handled Nodes)
- 由用于处理求值的动力学求值器读取的节点集。
- 操作(Action)
- 选择动力学求值器对已处理的节点执行的操作。
| 名称
|
功能
|
| 无(None)
|
忽略节点。
|
| 求值(Evaluate)
|
一旦需要满足特殊求值要求,便实现求值。
|
| 冻结(Freeze)
|
导致动力学求值器以当前状态冻结其处理的所有节点。不执行求值,节点不受影响;这是运行最快的方法。
|
GPU 覆盖
在脚本编辑器中显示以下报告。有关此求值器的描述,请参见求值器参考;有关“GPU 覆盖”(GPU Override)的技术信息,请参见使用并行 Maya。
- 活动变形链(Active deformation chains)
- 编译由 GPU 求值器处理的变形链(是一种网格,至少有一个变形器)的列表。
- 网格信息(Mesh information)
- 打印每个网格当前的 GPU 变形支持信息。如果该网格当前由 GPU 变形器处理,则其变形链将显示在列表中。反之,列表会显示将其排除在外的原因。
- 选定节点状态(Selected nodes status)
- 打印选定节点当前的 GPU 变形支持信息。如果该节点当前由 GPU 变形器处理,则其变形链将显示在列表中。反之,列表会显示将其排除在外的原因。
- 簇(Clusters)
- 打印由变形器求值器处理的每个簇的节点列表。每个变形器链都有各自的簇。
选择
选择以下选项:
- 受求值管理器控制的节点(Nodes under evaluation manager control)
- 将当前选择更改为仅限于受求值管理器控制的节点。未直接或间接设置动画的节点不包含在该集中。
- 上游节点(Upstream nodes)
- 从当前选择中选择目前受求值管理器控制的、位于上游的所有节点。在该操作之前选择的节点取决于在该操作之后选择的上游节点。
- 下游节点(Downstream nodes)
- 从当前选择中选择目前受求值管理器控制的、位于下游的所有节点。在该操作之后选择的下游节点取决于在该操作之前选择的节点。
上游节点与下游节点
连接到求值图中的所有节点被视为“上游”或“下游”。
在下图中,您可以看到上游节点与下游节点如何交互。
在以下情况下,需要“上游”:
- nurbsCone1_translateX => nurbsCone1
- nurbsCone1_translateX 是 nurbsCone1 的上游
- nurbsCone1 需要 nurbsCone1_translateX
“下游”取决于:
- nurbsCone1_translateZ => nurbsCone1
- nurbsCone1 是 nurbsCone1_translateZ 的下游
- nurbsCone1 取决于 nurbsCone1_translateZ
循环
完整图形(Full Graph)
创建 .PDF 和 .DOT 文件以显示场景的当前求值图。
- 输出文件夹(Output Folder)
- 键入保存输出图形的文件夹对应的路径。单击“生成”(Generate)可创建输出图形。单击文件夹图标
可打开文件浏览器,您可从中导航到相应的文件夹。
- 输出基础文件名(Output base file name)
- 显示基础文件名。默认值为 _EvaluationGraph_。
- 生成的文件会将 .DOT 和 .PDF 添加到所选的基础文件名。
- 生成(Generate)
- 使用当前求值图创建 Graphviz .DOT 文件。如果执行传递归约(Perform transitive reduction)选项处于活动状态,将额外创建一个包含传递归约(由 Graphviz tred 命令执行)输出的 .DOT (.tr.dot) 文件。然后,该 .DOT 文件将转化为 PDF 文件(使用 Graphviz dot 命令),并使用系统的默认 PDF 阅读器应用程序打开。
- 执行传递归约(Perform transitive reduction)
- 激活该选项可执行传递归约,以便输出图形移除多余的依存关系,以清理输出图形的混乱状况。
注: 对于大型场景,此过程可能需要很长时间。
- 在完整图形中标记簇(Mark clusters in full graph)
- 激活该选项可在输出图形中亮显求值簇。
- 打开(Open)
- 打开新创建的 PDF 文件。
循环图(Cycle Graph)
此部分提供了用于调查场景中循环簇的工具。循环簇按顺序进行求值,因此,对于大型循环簇,并行操作的可能性会降低,并且可能无法有效使用所有 CPU 核心。大型循环簇限制了常规场景性能,将其拆分开可提高性能。
- 循环簇(Cycle clusters)字段
- 单击“生成”(Generate)可在此字段中显示当前场景内的循环簇的列表,并按簇中的节点数排序(数量最多的排在最前面)。所含节点少于选定阈值的簇不会包括在列表中。
- 将打印每个簇的节点数和第一个节点。可以使用 evaluationManager 命令查询完整的簇。
- 循环大小阈值(Cycle Size Threshold)
- 定义要包含的循环簇的最小节点数。默认值为 100。
注: 小循环可能与性能分析不太相关。
- 刷新循环簇列表
- 单击可更新循环列表。
- 根据选定节点选择循环
- 选择包含选定节点的循环。
- 列出选定循环簇中的节点
- 显示循环簇中的所有节点。
- 最短路径(Shortest Path)
-
如果在当前选定的簇中同时指定了源节点和目标节点,这两个节点将在输出图形中亮显为绿色。从源节点到目标节点的路径为蓝色,反之为红色。
注: 使用此设置时取消激活传递归约,因为它可从这些路径中移除连接。
- 最短路径(Shortest Path)
-
- 源节点(Source node)
- 单击“拾取选定对象”(Pick Selected)可设置“源节点”(Source node)。
- 目标节点(Destination node)
- 单击“拾取选定对象”(Pick Selected)可设置“目标节点”(Destination node)。
- 仅最短路径(Shortest path only)
- 激活该选项后,仅显示最短路径上的节点。
- 输出文件夹(Output Folder)
- 键入保存循环簇图形的文件夹对应的路径。单击“生成”(Generate)可创建该图形。单击文件夹图标
可打开文件浏览器,您可从中选择目标文件夹。
- 输出基础文件名(Output Base File Name)
- 显示基础文件名。默认值为 _CycleCluster_。
- 执行传递归约(Perform transitive reduction)
- 激活该选项可对输出图形执行传递归约,从而移除多余的依存关系,以清理输出图形的混乱状况。
相关性(Dependencies)
此区域支持您生成图形以显示两组节点之间的依存关系。这有助于说明为什么不应相互依赖的两组节点实际上彼此具有依存关系。
- 上游/下游节点(Upstream/Downstream nodes)
- 选择要用作“上游/下游节点”(Upstream/Downstream nodes)列表的节点,然后单击“选择选定对象”(Choose Selected)以使用这组节点。
- 输出文件夹(Output Folder)/输出基础文件名(Output Base File Name)
- 键入保存该图形的文件夹对应的路径。单击“生成”(Generate)可创建该图形。单击文件夹图标
可打开文件浏览器,您可从中导航到相应的文件夹。
- 执行传递归约(Perform transitive reduction)
- 激活该选项可对输出图形执行传递归约,从而移除多余的依存关系,以清理输出图形的混乱状况。
报告
此区域包含您可为场景生成的报告。目前,只有一个关于表达式的报告。结果将显示在脚本编辑器中。
- 表达式(Expressions)
- 如果处于活动状态,则报告表达式节点的总数以及安全和不安全的表达式节点数。
- 安全的表达式可以拥有多个输出,但这些输出必须是其输入的函数。
- 安全的表达式仅输出其输入(正在通过 DG 连接读取的输入)的函数,且不调用数学函数除外的命令。这些节点不能产生任何副作用,以便与其他节点同时求值。无法将不安全的表达式与其他任何节点并行求值。不安全的表达式无法与其他任何节点并行求值
- 此报告将检查可能影响场景性能的不同表达式类型。
- 单击“生成”(Generate)可创建该报告。
冻结
使用以下选项可激活或禁用部分 DAG(有向非循环图),从而提高性能。激活“显示传播”(Explicit Propagation)后,不会调度设置为冻结状态(直接或间接)的所有对象进行求值,这将提高播放性能。如果改为选择“运行时传播”(Runtime Propagation),则部分图形仍将进行调度,但在运行时会跳过。
仍将调度已设置动画的冻结状态,因为必须先对其进行求值,然后才能确定它们是否为必需。
- 冻结传播(Frozen Propagation)
- 激活该选项后,可将所有已冻结的引用节点设置为强制其所引用的节点也处于冻结状态,而不考虑对这些节点应用的任何编辑。
-
- 运行时(Runtime)
- 此设置仅在运行时启用下游删减。仍将调度冻结节点,但在发现这些节点处于冻结状态之后,会跳过所有下游求值。
- 显式(Explicit)
- 激活该选项等效于启用冻结求值器。它使用冻结选项防止通过直接或间接冻结对未求值的节点进行任何调度。此设置可以最大程度地加快播放速度。
- 下游/上游冻结模式(Downstream/Upstream freeze mode)
- 用于指定“冻结”(Freeze)模式的严格性。选择“上游”(Upstream)或“下游”(Downstream)。
-
| 无(None)
|
无下游/上游传播。
|
| 当所有父对象冻结时(When All Parents are Frozen)
|
仅当下游/上游节点的所有上游/下游节点处于冻结状态时,才会冻结该下游/上游节点。
|
| 始终(Always)
|
冻结节点中的所有下游/上游节点也处于冻结状态,即使它们具有其他非冻结输入也如此。
|
- 冻结不可见(Freeze Invisible)
- 沿 DAG(有向非循环图)层次将冻结状态向下传播到所有不可见的子对象。这样可以冻结根节点(使其不可见)及其整个 DAG 层次。如果不使用此选项,则必须分别冻结每个节点。 从“节点”(Nodes)或“显示层”(Display Layers)中进行选择,使属于不可见的冻结显示层成员的节点也会冻结。
- 直接冻结的节点(Directly Frozen nodes)
- 单击“选择”(Select)可选择哪些节点已冻结。
- 单击“打印”(Print)可打印已冻结节点的列表。
- 单击“全部解冻”(Unfreeze All)可取消选择已冻结的每个节点。
明细表
- 调度类型覆盖
- 通过该选项,我可以使用下面列出的工具,选择要应用于给定类型的所有节点的调度类型覆盖。以下是每种覆盖类型的描述:
| 调度类型覆盖
|
说明
|
| 无(None)
|
无调度类型覆盖。这是默认设置。
|
| 并行(Parallel)
|
断言该节点及其使用的所有第三方库是线程安全的。调度器可同时计算此节点的实例与其他节点的实例,不受任何限制。
|
| 序列化(Serialize)
|
断言可以安全地运行此节点以及其他节点的实例。但是,应在同一求值链中按顺序执行此调度类型的所有节点。
|
| 全局序列化(Globally serialize)
|
断言可以安全地运行此节点以及其他节点的实例,但每次仅运行此节点的单个实例。如果该节点依赖于静态状态(如果同时对多个节点实例求值,这可能会产生不可预料的结果),请使用此设置。如果第三方库存储状态,同样的限制可能适用。
|
| 不受信任(Untrusted)
|
断言此节点不是线程安全的,并且在对此节点的实例求值时不应对其他任何节点进行求值。不受信任的节点将延缓到求值计划结束时,并且可能会引入成本高昂的同步操作。
|
-
注册的节点类型(Registered Node Types)
-
从“注册的节点类型”(Registered Node Types)列表中选择节点类型,然后选择要应用的调度类型覆盖,以指定调度器计划对节点并行求值的时间。单击“刷新”(Refresh)
可更新节点类型(Node Types)列表。
-
- 选定类型覆盖(Override for selected type(s))
-
- 打印(Print)
- 单击“打印”(Print),可显示您在“注册的节点类型”(Registered Node Types)列表中选择的节点类型上已激活的调度覆盖。
- 设定(Set)
- 单击“设置”(Set),可为“注册的节点类型”(Registered Node Types)列表中的所有选定节点类型指定在“调度类型覆盖”(Scheduling type override)选项中设置的相同调度类型。
- 选定节点(Selected Nodes)
- 从场景中选择一个节点,然后选择要应用的调度类型覆盖,以指定调度器计划对节点并行求值的时间。
-
-
选定节点类型覆盖(Override for type(s) of selected node(s))
-
| 打印(Print)
|
显示当前对场景中每个选定节点的类型激活的调度覆盖。
|
| 设定(Set)
|
为场景中每个选定节点的类型指定在“调度类型覆盖”(Scheduling type override)选项中设置的相同调度类型。
|
- 用于选定节点的类型(Type used for selected node(s))
-
| 打印(Print)
|
显示调度器对场景中每个选定节点使用的实际调度类型,将覆盖考虑在内;或者,如果不存在覆盖,则显示未修改的调度类型。
|