摘要
随着公众、政府和私人企业安全意识的不断增强,推动了对更可靠安全措施的需求。新技术的出现使数字安全监控(DSS)日益成为日常生活中必不可少的组成部分。当今复杂的监控解决方案要求具备可扩充性,以支持大量的视频通道、更高的输入/输出(I/O)接口吞吐率、处理复杂算法的处理器性能以及可靠的大容量数据存储。
视频压缩是DSS应用中计算要求最苛刻的模块之一。软件优化可减少处理器的视频压缩负担,使处理器可腾出资源用于其它重要应用,如视频分析和图形用户接口。本文介绍了借助当前英特尔®架构处理器所支持的特性实现的视频压缩性能改进。
介绍
当前的32位英特尔®架构处理器(包括英特尔®奔腾®4处理器、英特尔®至强®处理器和英特尔®奔腾®M处理器)具有旨在改进该性能的多种特性。这些特性包括单指令多数据流(SIMD)指令集扩展、超线程(HT)技术1、以及支持在高时钟频率和高速缓存层次执行指令的微体系结构。
单指令多数据流(SIMD)
运用 MMX™ 技术的32位英特尔®架构(IA-32)引进了SIMD
计算技术,并在英特尔®引进SIMD流指令扩展(SSE)、SIMD流指令扩展2(SSE 2)和SIMD流指令扩展3(SSE 3)
后又得到进一步提高。SSE、SSE2和SSE3 不仅增加了提高多线程代理程序之间同步的128 位寄存器和指令,还增加了单精度和双精度浮点操作的处理器指令,使
MMX技术得到扩展(参见表1)。
SIMD 扩展改进了应用的性能,使其具有了:i) 内在并行处理能力,ii)重复的内存访问模式,iii)对数据执行本地化反复操作,和
iv)数据独立控制流程的特点。SIMD
解决了DSS中使用多媒体、通信和图形/视频应用的需要。这些应用经常使用复杂的算法,对数量巨大的数据重复执行相同的操作。诸如
3D图形渲染、3D几何、图像处理和视频编码和解码等均属于此类应用。
不含SIMD的计算称作标量处理,每次对一个数据点执行一条指令。采用SIMD的计算支持处理器可对多个数据点同时执行一条指令,提高了给定时间段所处理数据的数量。
超线程(HT)技术
超线程(HT)技术通过在一个物理处理器封装内提供多个逻辑处理器资源,使软件能够利用任务级别或线程级别的并行处理能力。操作系统和应用通过维持这两个处理器的架构状态,将单个物理处理器作为两个逻辑处理器使用。超线程(HT)技术通过将处理器资源分配给所需的应用,使处理器在给定时间内完成更多任务及有效共享原本闲置的资源,从而提供更高效的多任务处理能力和系统响应能力。超线程(HT)技术能够大幅提高当前许多DSS应用的性能,如处理多视频数据流的程序。某些英特尔®
奔腾® 4 处理器和英特尔至强处理器产品线支持该技术。
所有测试均在基于带英特尔® 915G 高速芯片组的英特尔® 奔腾® 4 处理器 2.4 GHz 的平台上进行。第一个试验是观察时钟周期数,它是进行视频压缩时,在4个主要模块中执行C语言、MMX技术、SSE和SSE2内置的功能时所必需的。测试时,这些功能需执行 10,000,000 次,然后取其平均值作为一个精确数值。执行视频编码功能所需的处理器周期数由于使用了较新的SIMD指令集而大幅减少。在相同时间内可进行更多操作,从而提高了性能。与以C语言为基础的计算相比,该技术不仅大大缩短了处理器周期,还相应地大幅提升了性能。SUM功能为每个模块性能的提高提供了综合指标。运动评估、运动补偿、DCT/IDCT和量化/非量化结果均显示了此种总体趋势。
由于采用了最新几代SIMD指令集扩展提高了总每秒帧数,从而实现了与基于C语言相比的大幅性能提升。MMX 技术、SSE和SSE2 的优化因数约分别为12、17和20。本部分说明采用支持或不支持超线程(HT)技术的程序测试所达到的性能提高。在真实视频范例中超线程(HT)技术的应用大幅提高了帧频。处理的实际帧数主要由场景的复杂程度和场景包含的运动数量而定。这些范例显示性能提高7-20%。
结论
这些结果显示当前32位英特尔® 架构处理器具有这些功能,能提高视频编码所需主要功能模块的处理效率。MMX技术、SSE和SSE2指令集扩展的采用使其性能比基于C语言的实施有大幅提高。其中SSE2 提高的幅度最大。当运用到真实视频范例中时,MMX技术和最新的SIMD计算改进(SSE和SSE2)分别将性能提高了12、17和20倍,而超线程(HT)技术则使性能提高了7-20%。
对于DSS解决方案的开发商而言,这些性能的提高将提高处理器的利用率并从应用性能的大幅提高中受益。
网友评论