D3D12DDI_MEASUREMENTS_ACTION_0062 枚举 (d3d12umddi.h)

指示如何处理以前的 PGO (配置文件引导式优化) 度量的结果。

语法

typedef enum D3D12DDI_MEASUREMENTS_ACTION_0062 {
  D3D12DDI_MEASUREMENTS_ACTION_0062_KEEP_ALL,
  D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS,
  D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS_HIGH_PRIORITY,
  D3D12DDI_MEASUREMENTS_ACTION_0062_DISCARD_PREVIOUS
} ;

常量

 
D3D12DDI_MEASUREMENTS_ACTION_0062_KEEP_ALL
D3D12DDI_MEASUREMENTS_ACTION_0062_KEEP_ALL不请求任何特定的行为更改。 以前的结果仍然有效,驱动程序可以继续跟踪正在测量的任何统计信息。
D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS
D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS提示,到目前为止看到的工作负载代表一组值得优化的内容,例如,场景飞越已在基准测试工具中完成,或者在 PIX 中完成了所分析的单个帧的播放。 UMD 应根据它目前所看到的内容启动任何所需的后台处理,因为不久的将来不会进行不同的工作。 UMD 从指定D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS的 SetBackgroundProcessingMode 调用返回后,所有当前排队的后台任务都将被视为提交的一部分。 该组任务完成执行后,将向提供的 hEventToSignalOnCompletion 发出信号。

如果 UMD 一直在收集有关的统计信息,例如常用的常量值,并且正在等待在对此信息执行操作之前记录一些阈值数据,提交标志应纵向扩展到目前为止记录的任何频率直方图,以给出相同的结果,就像在较长的数据收集时间后已达到正常的立即操作阈值一样。 这一点对于让 PIX 仅重播一个单帧捕获,但随后请求与该工作相匹配的最终优化着色器集,而不必浪费时间重复单个帧数百次。

如果未使用D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS或D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS_HIGH_PRIORITY模式, 则 hEventToSignalOnCompletion 必须为 null。
D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS_HIGH_PRIORITY
D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS_HIGH_PRIORITY是修改线程计划行为的D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS模式的超集。 此模式表示快速完成后台编译比避免故障更重要,因此 D3D 运行时将使用多个线程同时计划多个任务,并在高于空闲优先级的情况下执行这些任务。 此提升将持续到提交生成的所有任务都已完成执行。

仅当启用开发人员模式时,高优先级模式才有效
D3D12DDI_MEASUREMENTS_ACTION_0062_DISCARD_PREVIOUS
向 UMD D3D12DDI_MEASUREMENTS_ACTION_0062_DISCARD_PREVIOUS提示工作负载已发生重大更改,因此以前的度量结果不再有意义。

要求

要求
最低受支持的客户端 Windows 10 版本 1903
标头 d3d12umddi.h