流媒体性能评估结果
流媒体性能评估可帮助你评估和改进计算机的流媒体性能。 此评估使用部署在本地计算机或远程服务器上的流式传输服务器应用程序。 评估启动 Internet Explorer® 10 并从头到尾或到指定时间播放媒体内容。 然后,Internet Explorer 关闭并生成结果。
除了有关如何使用这些结果来识别和解决对流媒体体验产生负面影响的常见问题的指导外,本主题还提供了了解流媒体性能评估结果的指导。 尽管 Internet Explorer 在本分析中用作流式传输客户端,但本主题中讨论的技术可用于改善 Windows 上的一般流式传输体验。
本主题内容:
有关此评估、系统要求和评估设置的更多信息,请参阅流式传输媒体性能。
目标文件
可以在结果视图中创建自定义目标来衡量改进。 目标文件是一种分类工具,有助于了解电脑的性能并比较企业中的电脑。
例如,基本款笔记本电脑的目标可能与为高端台式计算机设定的目标不同,或者市场预期可能会发生变化,而您希望随着时间的推移和技术的进步灵活地定义不同的目标和关键要求。
将某个度量值与该度量的目标进行比较时,状态在结果视图中以颜色编码,如下所示:
浅紫色表示该系统的用户体验出色,并且没有已知的问题。
淡紫色表示用户体验尚可,并且可以优化系统。 查看建议和分析,了解可以对系统进行哪些改进。 这些更改可能是软件更改、配置更改或硬件更改。
深紫色表示该系统的用户体验较差,并且还有很大的改进空间。 查看建议和分析,了解可以对系统进行哪些改进。 这些更改可能是软件更改、配置更改或硬件更改。 您可能必须考虑进行权衡,以提供高质量的 Windows 体验。
无颜色表示没有为度量值定义目标。
注意 在适用于 Windows 8 的 Windows 评估工具包中,某些评估包括默认目标文件。 第一次使用此版本的工具查看结果时,将使用默认目标文件。 但是,也可以按照与 Windows 8.1 和 Windows 10 相同的方式为 Windows 8 定义自定义目标。
可以设置目标文件位置并将目标文件添加到该位置,然后才能使用 UI 应用自定义目标。 选择目标文件后,它将继续作为目标文件,用于任何打开的结果。
一次只能使用一个目标文件。 所有评估的目标都在单个目标文件中设置。 评估工具将按以下顺序搜索目标:
自定义目标文件
结果文件中定义的目标
评估清单中定义的目标
可以使用 %PROGRAMFILES%\Windows Kits\10\Assessment and Deployment Kit\Windows Assessment Toolkit\SDK\Samples\Goals 中提供的示例目标文件来创建自己的目标文件。
注意 不能将目标文件打包为作业,但可以将它存储在共享中供其他人使用。
指标
流式处理媒体性能评估报告音频和视频故障指标。 不是直接报告遇到的视频故障计数,而是根据人类感知对故障进行分类。 大多数人能够感觉到音画不同步的范围是 80 到 160 毫秒。 在此时间范围内,计算在 30 FPS 视频被感知之前可能出现故障的连续帧数。 根据出现故障的连续帧数,视频故障分为严重、中度或次要故障,如下所示:
出现故障的连续帧的计数 | 故障分类 |
---|---|
1 |
轻微故障 |
2 到 4 |
中度故障 |
>=5 |
严重故障 |
评估工作负载的 60 秒回放时长可分为 60 个 1 秒间隔。 根据间隔中发生的故障类型,每个间隔被分类为严重、中度、轻微或无故障间隔。 例如,中度故障间隔是指其中至少发生了一个中度故障但没有出现严重故障的间隔。 类似地,小故障间隔是指其中至少发生了一个轻微故障但没有出现中度或严重故障的间隔。
默认情况下,此评估对工作负载运行 3 次迭代。 但是,视频在 3 次迭代期间将播放 5 次。 第一次迭代是初始化 Internet Explorer,然后有 3 次视频播放用于计算指标。 最后一次迭代用于评估结果。
训练迭代。 这是第一次迭代,确保加载了 Internet Explorer DLLS。
计时迭代。 这些迭代用作指标值的基础。 指标值是这三个迭代的平均值。 默认情况下,60 秒的流式传输的三次完整迭代会生成用于计算指标的 StreamingMediaAssessment.etl 跟踪文件。 在这些迭代期间,仅启用轻度日志记录以减少检测生成的指标所产生的开销。 因此,此跟踪文件中不会收集详细的诊断事件。
分析迭代。 此迭代在评估运行时收集信息,并作为评估产生的问题的基础。 这是 60 秒流式传输的完整迭代。 在此迭代期间,将启用详细日志记录以收集详细的诊断信息。 评估过程将分析在此迭代中生成的跟踪文件 (StreamingMediaAssessmentDiagTrace.etl),以检测系统上与媒体相关的常见问题。
UI 的详细信息窗格中提供了指向跟踪文件的链接。 要查看单个迭代的值,请在结果视图中,右键单击结果列标题,然后选择“显示迭代”。
问题
此评估执行高级问题分析并提供指向 Windows 性能分析器 (WPA) 的链接,以解决已识别的问题。 大多数情况下,你可以选择 WPA 深入分析链接来解决出现的问题。 当 WPA 打开时,可能会提供有关磁盘活动或 CPU 活动的其他详细信息,具体取决于识别的问题类型。 有关深入分析问题和建议的更多信息,请参阅常见的深入分析问题。
当评估开始时,它会在计算机上执行某些初步检查,以确保可以在评估的不同用途中生成一致的结果。 如果在评估运行之前未解决警告,评估结果中可能会出现各种警告。 完成流媒体评估后,根据诊断跟踪文件的自动分析,评估会针对系统中识别的常见媒体问题生成问题报告。 可以在 WPA 中分析这些问题。 除了解决生成的问题外,还可以使用 WPA 和 GPUView(Windows 性能工具包中包含的一种工具)对诊断跟踪文件执行额外的手动分析。
本节包括:
常见问题
音频故障的一些主要原因包括:
长时间运行中断服务例程 (ISR) 和延迟过程调用 (DPC)
ISR 是一个设备驱动程序例程,当设备发出中断时,内核的中断调度程序将控制权转移给 ISR。 在 Windows I/O 模型中,ISR 以高设备中断请求级别 (IRQL) 运行,因此它们执行的工作尽可能少,以避免不必要地阻塞较低级别的中断。 ISR 通常将运行在较低 IRQL 的 DPC 排队,以执行其余的中断处理。 DPC 的运行时间不应超过 100 微秒,ISR 的运行时间不应超过 25 微秒。 除了其他系统性能影响外,长时间运行的 ISR 和 DPC 可能会导致音频引擎延迟,从而导致音频故障。 运行时间超过 1 毫秒到 3 毫秒的 ISR 或 DPC 可能会影响系统上的媒体性能。 与长期运行的 ISR 和 DPC 类似,频繁的 ISR 和 DPC(ISR/DPC 风暴)也会对性能产生类似的影响。 通常会在网络、存储和图形驱动程序中遇到此类 ISR 和 DPC 问题。 该评估会为长时间运行( 1 毫秒到 3 毫秒)的 ISR/DPC 生成警告,并为持续时间大于 3 毫秒的 ISR/DPC 生成一个错误。 有关详细信息,请参阅分析生成的问题。
在调度级别运行的内核工作线程
除了 DPC 之外,一些内核工作线程也可能在调度级别 (IRQL = 2) 运行。 同样,这些也可能导致延迟,从而导致音频故障。 要检测此类情况,请查找长时间不间断运行且未被抢占的低优先级系统线程。
客户端匮乏
在这种情况下,源无法以足够快的速度从磁盘或网络读取以跟上实时解码和呈现。 例如,磁盘可能因硬页错误而挂起,因此无法以比实时更快的方式从磁盘读取样本。
视频故障的主要原因包括以下几种:
下游瓶颈:源匮乏(磁盘受限制)
中游瓶颈:解码器被最大化(软件或硬件解码器受限制)
上游瓶颈:GPU 受限制或内存传输缓慢
预检警告
在开始评估(流式传输视频)之前,流媒体性能评估会对系统进行一些预检查。 当这些预检查失败时,评估会生成错误和警告。 虽然这些错误会阻止评估运行,但这些警告不会阻止,且允许评估继续进行。 影响评估结果的一些重要的预检查包括以下几个方面:
需要交流电源(警告)
我们建议在使用交流电源的计算机上运行流媒体性能评估,因为计算机上的某些设备在使用电池运行时可能会进行纵向缩减,从而影响评估结果。
不建议使用 VGA 驱动程序运行(警告)
缺少显示驱动程序(例如 Microsoft 基本显示驱动程序)可能会导致额外的视频故障。 要获得准确的结果,请确保在运行评估之前安装了正确的显示驱动程序。 有关驱动程序的更多详细信息,请运行驱动程序验证评估。
不建议在没有活动音频渲染设备的情况下运行(警告)
如果系统上没有音频渲染设备,一些与音频相关的评估结果可能不准确。 如果你有音频设备,请在运行评估之前为其安装驱动程序。 如果计算机中没有内置扬声器,请将耳机或扬声器连接到计算机的音频输出端口以解决此警告。
不建议使用远程会话(警告)
为了获得更准确的结果,我们建议在计算机上本地运行评估(而不是使用远程桌面会话)。
多监视器(警告)
为了获得更准确的结果,我们建议在仅连接一个显示器的计算机上运行评估。 由于评估以信息亭模式(全屏)启动 Internet Explorer,因此在单个监视器系统上,Internet Explorer 是唯一要合成到桌面的顶级窗口。 在多监视器计算机上,可能还有其他顶级窗口。 这可能会影响评估结果。
分析产生的问题
大多数情况下,你可以选择 WPA 深入分析链接来解决产生的问题。 这将在 WPA 中打开 StreamingMediaAssessmentDiagTrace.etl,其中包含用于分析问题的适当配置文件。 在 WPA 中,你可以在“问题详细信息和调查范围”中扩展问题以缩小问题范围。 有关深入分析问题和建议的更多信息,请参阅常见的深入分析问题。
关联故障
在分析评估产生的问题后,可以通过在 WPA 中打开诊断跟踪,然后使用“流媒体分析”链接来执行附加分析。 这将使用适合流媒体跟踪分析的视图启动 WPA。
第一个感兴趣的表是“活动”表,它提供了在评估的分析迭代期间发生的活动(或间隔)的分层视图。 例如,可以检查以下间隔:
流媒体评估 – 评估的根区间,跨越整个跟踪。
流媒体评估迭代——跟踪文件中每次评估迭代的间隔;默认情况下,诊断跟踪将仅包含一次迭代。
工作负载 - 迭代中每个工作负载视频的间隔。 默认情况下,仅存在 1080p 工作负载。
媒体引擎生命周期 – 工作负载视频流式传输的时间间隔。
在跟踪中找到感兴趣的区间时,选择 WPA 中的区间,然后放大选择以缩小分析范围。
可以在“通用事件”表(WPA 分析选项卡中最底部的表)中查看记录的故障事件。 在通用事件表中选择“故障事件”预设以按所需毛刺进行过滤。 跟踪中出现更多此类故障事件表明系统上的流媒体体验相对较差。 要分析这些故障的原因,请尝试将它们与 WPA 中其他汇总表的图表相关联。 通过将故障事件与其他汇总表相关联,可以识别系统中可能存在的问题。
软件与硬件解码
软件或硬件解码可用于解码在此评估中流式传输的 H.264 视频。 如果系统显卡不支持 H.264 视频解码,则使用软件解码。 使用软件解码时,由 CPU 负责执行解码工作,而不是由 GPU。 在这种情况下,CPU 可能受限。 这使得它无法跟上视频流的实时解码需求,从而导致故障。
能否使用硬件解码取决于显卡支持的 DXVA2 模式。 带有 DXVA2_ModeH264_VLD 前缀的 DXVA2 模式(如 DXVA2_ModeH264_VLD_FGT)表示显卡可以支持 H.264 视频的硬件解码。 显卡支持的 DXVA2 模式可以从 JobResults XML 文件的以下 XML 元素中获取:/AxeJobResults/MachineConfiguration/EcoSysInfo/Graphics/DXVA2Modes。 JobResults XML 文件位置显示在结果视图详细信息窗格中。
GPU 利用率高
当 GPU 受限时,上游瓶颈也可能导致视频故障。 通过在 GPUView 工具中打开流媒体诊断跟踪,可以可视化 GPU 利用率。 GPUView 工具可以从事件跟踪日志 (.etl) 文件中读取记录的视频和内核事件,并以图形方式显示数据。 GPUView 工具是 Windows Performance Toolkit 的一部分,安装后可在以下位置使用:“%ProgramFiles(x86)%\Windows Kits\10\Windows Performance Toolkit\gpuview\GPUView.exe”。 流媒体诊断跟踪的路径类似于:“<作业结果目录>\000_StreamingMedia\StreamingMediaAssessmentDiagTrace.etl”。
GPUView 可用于确定图形处理单元 (GPU) 和中央处理单元 (CPU) 在视频硬件上的直接内存访问 (DMA) 缓冲区处理(以及所有其他视频处理)方面的性能。 开发人员和测试人员可以使用 GPUView 显示可能导致异常情况的不同类型的事件,例如故障、准备延迟和同步不佳。 有关如何使用 GPUView 的更多信息,请参阅随工具安装的文档帮助文件 GPUView.chm。
评估报告退出代码 0x80050006
当维护任务已在 PC 上注册但在评估运行之前尚未完成时,会发生此错误。 这会阻止评估运行,因为维护任务通常会影响评估指标。
若要解决此问题,请执行以下操作之一:
请确保计算机已连接到网络并使用交流电源运行。 在权限提升的提示符下使用以下命令,手动启动挂起的维护任务:
rundll32.exe advapi32.dll,ProcessIdleTasks
在运行评估之前,请禁用常规和空闲维护任务,并停止所有维护任务。