CN1318966C - 设定媒体帧的质量的方法和系统 - Google Patents
设定媒体帧的质量的方法和系统 Download PDFInfo
- Publication number
- CN1318966C CN1318966C CNB028245512A CN02824551A CN1318966C CN 1318966 C CN1318966 C CN 1318966C CN B028245512 A CNB028245512 A CN B028245512A CN 02824551 A CN02824551 A CN 02824551A CN 1318966 C CN1318966 C CN 1318966C
- Authority
- CN
- China
- Prior art keywords
- quality
- media
- milestone
- media frame
- state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/4424—Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/66—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N17/00—Diagnosis, testing or measuring for television systems or their details
- H04N17/04—Diagnosis, testing or measuring for television systems or their details for receivers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4435—Memory management
Abstract
本发明涉及能被用来在时间和资源受约束的环境中实现最大的可感知的用户质量的自适应调度和资源管理技术,诸如Markov决策问题。
Description
发明技术
本发明涉及一种设定媒体帧的质量的方法。
本发明进一步涉及一种设定媒体帧的质量的系统。
本发明进一步涉及一种设计用来执行这种方法的计算机程序产品。
本发明进一步涉及一种包含这种计算机程序产品的存储设备。
本发明进一步涉及一种包含这种系统的电视机和机顶盒。
发明背景
以上所列举的方法和系统的一个实施例,在非提前公开的欧洲专利申请EP 0109691(律师文档号PHNL010327)中有说明。这里描述了一种在诸如VCR、DVD-RW、硬盘的系统上或因特网链接上运行一种算法和可升级(scalable)可编程处理设备的方法。算法被设计用来处理媒体帧,例如视频帧,与此同时提供处理的多种质量水平。每个质量水平需要一定的资源量。视对不同质量水平的不同质量要求,将可用资源的预算分配给算法,以便提供可接受的媒体帧的输出质量。然而,媒体流的内容是随时间而变的,这就致使媒体处理算法的资源要求随时间而不同。由于资源是有限的,很可能发生错过最后期限。为了缓解这个问题,媒体算法可以以低于缺省质量水平的质量水平运行,导致相应地较低的资源要求。
发明内容
本发明的一个目的是提供一种按照前序的、采用一种以改进的方式控制处理媒体帧的质量水平变化的质量水平控制策略的方法。为了实现这个目的,由媒体处理应用设定一个媒体帧的质量的方法包含以下步骤:
确定用于处理该媒体帧的资源量的步骤;根据按里程碑计算的该媒体处理应用中相对进度(progress)来控制该媒体帧的质量的步骤。
利用该应用相对于周期性的最后期限(periodic deadlines)的相对进度作为以到里程碑的最后期限为止的、以最后期限的周期(deadline periods)所表达的时间,可以确定是否将要发生最后期限错过。为防止最后期限错过,处理算法的质量可以在一个里程碑处修改,这能改进由用户感知的媒体帧的质量。另外一个优点是,在保持一个可接受的质量水平的同时能更好地控制质量水平变化次数,因为质量水平变化可能被用户感知为非质量的(non-quality)。
在描述按照本发明的方法的一个实施例中,通过按一个Markov决策问题建立质量控制策略的模型,可以将质量控制策略看作一个随机决策问题。在博士论文Stochastic Dynamic Programming(随机动态编程)(Mathematisch Centrum Amsterdam,1980,J.van der Wal)中公开了一种随机决策问题。通过解决Markov决策问题,能更容易地预测不同策略的质量效果。
在描述按照本发明的方法的另一个实施例中,通过采用一个最大化所有转变的收益总量的决策策略,能更好地防止最后期限错过。
在描述按照本发明的方法的又一个实施例中,通过采用一个最大化每个转变的平均收益,能更好地控制质量变化的次数。
本发明另外一个目的是提供一种按照前序的、采用一种以改进的方式控制处理媒体帧的质量水平变化的质量水平控制策略的系统。为了实现这个目的,由媒体处理应用设定一个媒体帧的质量的系统包含:
确定装置,用来确定用于处理媒体帧的资源量;
控制装置,用来按在里程碑计算的媒体处理应用的相对进度来控制媒体帧的质量。
本发明的这些和其它方面将在以下参照如各附图所示的实施例及其说明中显而易见。
附图说明
图1表示一个时间线的例子;
图2表示时间线的另一个例子;
图3表示解码一个帧所要求的处理时间的一个累积分布函数;
图4表示一个控制策略的例子;
图5表示问题实例的每个转变的平均收益;
图6表示质量水平用法;
图7表示最后期限错过的百分率;
图8表示质量水平的平均增量;
图9表示例子方法的反复次数;
图10表示被测量的计算时间;
图11表示跳过最后期限错过方法;
图12示意性地表示按照本发明的系统;
图13示意性地表示按照本发明的电视机;
图14示意性地表示按照本发明的机顶盒。
具体实施方式
现今,许多媒体处理应用造成随着时间显著变化的CPU作业量。因此,如果这样一个媒体处理应用被指定了一个比其最坏的作业量情形所需的更低的CPU预算,则很可能发生最后期限错过。
这个问题可以通过以可升级方式设计媒体处理应用而得到缓解。可升级的媒体处理应用能在低于缺省设置的质量水平运行,导致相应地较低的资源需求。一个问题是为已经被分配以固定的CPU预算的可升级媒体处理应用找到一个质量水平控制策略,这样一个控制策略应当在最大化质量水平的同时,既最小化最后期限错过的次数,又最小化质量水平变化的次数。
按照本发明,这个问题被按Markov决策问题来建立模型。这个模型以计算一个应用在其各里程碑处的相对进度为基础。解决Markov决策问题的结果,就是一个能以少量的开销在运行时间期间运用的质量水平控制策略。这个方法用一个涉及可升级的MPEG-2解码器的实际例子来作评估。
市场要求诸如机顶盒和数字电视机的消费终端变得开放和灵活。这是通过将执行特定媒体处理应用的若干专用硬件部件替换为一个在上面执行等同的媒体处理应用的中央处理单元(CPU)而实现的。诸如CPU时间、存储器和总线带宽等资源,在这些应用之间是共享的。这里,优选地考察CPU资源。
媒体处理应用有两个重要特性。第一,它们有随着时间而显著变化的资源需求。这是因为它们所处理的媒体数据有变化的数量和复杂性。第二,它们有实时需求,这导致不能被错过的最后期限,以避免例如输出中的“打嗝”。因此,通过向一个媒体处理应用分配给在最坏作业量情形下所需的最少的资源量,以便获得理想的处理性能。然而,CPUs与专用部件相比是昂贵的。为了效能成本合算,分配资源应更接近平均作业量的情形。一般来说,这会导致其中媒体处理应用不能满足它们实时需求的情况。
这个问题可以通过这样设计媒体处理应用而解决,即媒体处理应用能在低于缺省质量水平的水平运行,导致对应地更低的资源需求。如果这样一个可升级的媒体处理应用有错过一个最后期限的风险,可以把它设置成降低质量水平的情况。这样,就能满足实时需求,其结果是一个鲁棒的(robust)系统。
考察一个以下称作应用的可升级媒体处理应用。该应用经常地从一个输入缓冲器区提取作业单元(units of work),处理它们,然后将它们写入输出缓冲器。为此,该应用定期地接收固定的处理用的预算。作业单元的大小和处理复杂性可能不同,因此处理一个作业单元所需的时间不是固定的。一个作业单元的结束被称作一个里程碑。每个里程碑有一个最后期限。这些最后期限被假设是在时间上严格定期的。显然,要防止最后期限错过。
在每个里程碑,计算该应用相对于各定期的最后期限的相对进度。对于一个里程碑的相对进度,被定义为直到这个里程碑的最后期限为止的时间,表示为最后期限时段。显然,这个相对进度应该是非负的。此外,由于有限的缓冲器大小,相对进度有个上限。
如果在一个里程碑的相对进度变成了负的,则已经发生一个或多个最后期限错过。为了防止这样,要在每个里程碑该应用所运行的质量水平要修正。问题是如何选择这个质量水平,以满足以下三个目标。第一,一个作业单元被处理的质量水平要尽可能地高。第二,最后期限错过的次数要尽可能地低。最后,质量水平变化的次数要尽可能地低,因为质量水平变化被视为非质量的。
注意,作为结果的质量水平控制策略应当被联机地运用,并与该应用在同一个CPU上执行。因此,在所需的CPU时间量方面应该是高效的。
处理随机决策问题的普通方法是按Markov决策问题建立它的模型。参看博士论文Stochastic Dynamic Programming(随机动态编程)(Mathematisch Centrum Amsterdam,1980,J.van der Wal)。
在每个里程碑处,计算应用的相对进度。这里,将某个里程碑处的相对进度定义为到里程碑的最后期限为止的、以最后期限时段表达的时间。
可以如下地计算里程碑处的相对进度。在不失一般性的情况下,假设应用在时间t=0开始处理。将里程碑m的时间记为cm。此外,将里程碑m的最后期限记为dm。最后期限是严格定期的,这意味着可以将最后期限写成
dm=do+mp,
其中,P是两个连续的最后期限之间的期间,do是个偏置值(offset)。在里程碑m处的相对进度记为pm,由下式给出:
为了解释相对进度的计算,考察图1中所示的时间线例子。在这个例子中,P=1,do=1。用(1)计算在里程碑1至5处的相对进度,得出ρ1=(d1-c1)/P=(2-1)/1=1,ρ2=1.5,ρ3=1,ρ4=0,以及ρ5=0.5。注意里程碑4时间刚好够。
如果在某个里程碑m处的相对进度降到零下,则自前一个里程碑以来已经发生了[-pm]个最后期限错过。如何处理最后期限错过,是应用所特定的。这里,假设一个作业保留方法,其含义是,刚刚产生的输出不被丢弃,而是无论如何要被使用。一种方式是在接下来的第一个最后期限使用这个输出,这意味着获得一个修正的相对进度ρ′m=ρm+[-ρm]≥0。假设一个保守的方法,选择ρ′m=0,即最低的可能值,这在某种意义上相当于在生成后立即使用该输出。换言之,最后期限dm和下面的各最后期限被推迟的量为-pmP。因此,可以用(1)计算各里程碑处的相对进度,不过使用了一个新的补偿值d′o=do-ρmP。
这个过程由图2中所示的时间线例子来解释。在这个例子中,P=1,do=0.5。利用(1),可以得出以下值:ρ1=0.5,ρ2=0.5,ρ3=-0.5。在里程碑3处的相对进度已经跌落到零下,因此自里程碑2-即t=3.5-以来已经发生了[-p3]=1个最后期限错过。然后,最后期限d3被推迟到d′3=c3=4,另外的各最后期限也被推迟0.5的量。继续下来,发现ρ4=0.5,ρ5=0.5。
在一个里程碑处的应用的状态自然地由其相对进度给出。然而这将给出一个无限大的状态集合,而Markov决策问题需要一个有限的集合。后者按下述方式实现:设p>0代表相对进度的给定上限。将0与p之间的相对进度间隔(space)划分成一个包含n≥1个进度间隔的有限集II={π0,……,πn-1},
k=0,....,n-1。进度间隔π的下限(lower bound)和上限(upper bound)分别记为
π和
在每个里程碑处,必须对下一个作业单元进行处理的质量水平做出决定。因此,Markov决策问题中的决定集合对应于应用能按其运行的质量水平的集合。将这个集合记为Q。
同时还要考虑质量水平的变化,因此在每个里程碑处,先前使用的质量水平应当是已知的。这可通过用质量水平扩展状态集合(set ofstates)而实现。因此,状态集合变成II x Q。将状态i中的应用的进度间隔和先前使用的质量水平分别记为π(i)and q(i)。
组成Markov决策问题的第二个元素是转换概率(transitionprobabilities)。如果选择质量水平q来处理下一个作业单元的话,设pij q代表从当前里程碑处的状态i到下一个里程碑处的状态j进行转换的转换概率。转换后,q(j)=q,这意味着如果q≠q(j)则
在其它情况中,转换概率可以按以下方式得出。
在不失一般性的情况下,假设应用在里程碑m正处于状态i。对于每个质量水平q,我们引入一个随机变量Xq,它给出按质量水平q处理一个作业单元所需的时间。如果假设应用在每期间P接收一个计算预算b,则相对进度ρm+1可以通过下列回归方程以ρm表达:
其中所使用的符号意义如下:
设Yπ,ρm,q是一个随机变量,它给出应用在下一个里程碑处的相对进度ρm+1是在进度间隔π内的概率,假定在当前里程碑处的相对进度是ρm,并且选择质量水平q,则可以得出:
假设Fq代表Xq的累积分布函数。利用回归方程(2),可以得出,当0<x≤p
当x=0,P(ρm+1≥x)=1,这直接从(2)得出。
不幸的是,ρm在进度间隔π(i)内的位置是未知的。通过选择该间隔中的最低值,可获得ρm的一个悲观近似值。这给出近似值
假定以上成立,则概率pij q可以由下式约计
选择的进度间隔越多,对转换概率的建模就越准确,因为(3)中的近似性更好。
组成Markov决策问题的第三个元素是收益(revenues)。将在状态i中选择质量水平q的收益记为ri q。收益被用来实现三个问题目标。
第一,对作业单元进行处理的质量水平应尽可能高。这是通过向每个ri q分配一个由一个函数u(q)给出的回报而实现的,这个函数被称作效用函数(utility function)。它返回一个正值,该值与在质量水平q下运行的应用的输出的感知质量直接相关。
第二,最后期限错过的次数应尽可能低。如果在某个里程碑处相对进度跌落到零下,则已经发生了一个或多个最后期限错过。
假设应用在里程碑m正处于状态i,则在到达里程碑m+1之前期望的最后期限错过数由下式给出
在将这个期望的最后期限错过数与一个名为最后期限错过代价(deadline miss penalty)的正值常数相乘后,将其从每个ri q中减去,以实现对最后期限错过的代价。
最后,质量水平变化的次数应尽可能低。这是通过从每个ri q中减去一个由函数c(q(i),q)给出的代价而实现的。如果q(i)≠q,该函数返回一个可随q(i)与q之间的差距的大小而增加的正值,否则该函数返回0。此外,可以给予质量的增加一个与质量的降低相比而言更低的代价。函数c(q(i),q)被称作质量变化函数。
如果只考虑有限数量的转换(所谓的有限时间范围),则Markov决策问题的解决方案由一个最大化所有转换的收益的总和的决策策略给出,这可通过动态程序设计发现。然而,我们有一个无限的时间范围,因为我们不能限制转换的次数。在这种情况下,最大化的一个实用标准由每个转换的平均收益给出。这个标准强调所有转换是同等重要的。
对无限时间范围的Markov决策问题有许多解决技术,诸如连续逼近、策略循环和线性规划。例如参看Martin L.Puterman的“MarkovDecision Processes:Discrete Stochastic Dynamic Programming”(马尔科夫决策过程:离散随机动态规划)(Wiley Series inProbability and Mathematical Statistics,John Wiley & Sons Inc.1994)和and D.J.White的 “Markov Decision Processes”(马尔科夫决策过程)(John Wiley & Sons Inc.1993)。这里所描述的试验采用的是连续逼近。
解决Markov决策问题导致一个最优的固定策略。
这里,固定的意思是,所运用的决策策略在所有里程碑处是相同的,即,它与里程碑号无关。图4中表示一个控制策略的例子,其中|II|=1014,|Q|=4,p=2。该例表明,例如,如果在某个里程碑处的相对进度是1,并且先前使用的质量水平是q1,则应当选择质量水平q2来处理下一个作业单元。
在不失最优性的情况下,可以使用所谓的单调控制策略,即依照先前使用的质量水平,可以假设一个较高的相对进度导致一个较高的或相等的质量水平选择。于是,为了存储一个最优的控制策略,依照先前使用的质量水平只需要存储相对进度范围在该范围内控制策略从某个特定质量水平变到另一个质量水平。因此,一个控制策略具有0(|Q|2)的空间复杂性,它与进度间隔数无关。
可以在应用开始执行之前,脱机解决Markov决策问题。下一步,我们如下地以联机方式运用得到的控制策略。在每个里程碑处,先前使用的质量水平是已知的,并计算应用的相对进度。然后,查询要对下一个作业单元进行处理的质量水平。这个方法需要的开销很小。
作为试验的一个输入,使用一个539个帧的电影片段的MPEG-2解码跟踪文件。这个文件含有对应每个帧的、为解码该帧所需的处理时间,该处理时间是以TriMedia上的CPU周期表达的,对应4个不同质量水平的每一个,这4个质量水平按递增的质量顺序被标记为q0到q3。从该跟踪文件中,对每种质量水平,得出解码一个帧所需的处理时间的累积分布函数,如图3中所示的那样。图3表示对应于质量水平q0到q3的、解码一个帧所需的处理时间的累积分布函数。
对问题参数作如下定义。将相对进度的上限p选择得等于2,这假设使用一个能存储两个解码帧的输出缓冲器。效用函数规定为u(qo)=1、u(q1)=5、u(q2)=7.5和u(q3)=10。将最后期限错过代价选择得等于1000,这意味着大体上每100个帧允许约1个最后期限错过。质量变化函数规定为这样一个代价:对于增加质量水平是5乘以质量水平数而对于减少质量水平则以6相乘。其次,使用代表预算b的57个不同的值,这些值从2,200,000个CPU周期到3,600,000个CPU周期以25,000个CPU周期为一步的增幅变化。对于每个预算b,选择20个不同的进度间隔数,这些数从|II|=30变化到|II|=1024,每步乘以1.2的增幅。这样,一共定义1140个Markov决策问题实例。
如所提及的那样,连续逼近算法被用来解决问题实例。除了计算不准确外,这个算法发现最优的控制策略。我们用一个值0.001作为不准确参数。作为结果的控制策略在给定的相对进度和先前使用的质量水平时,给出在每个里程碑处对下一个帧进行解码所应有的质量水平。对于每个计算出的控制策略,用这个控制策略模拟一个可升级MPEG-2解码器的执行。这些模拟利用一个根据给定处理时间分布合成地创建的、但是有30,000个帧而不是539个帧组成的跟踪文件中的处理时间。在每个模拟中,选择q0作为初始质量水平,分别测量每个转换的实际平均收益、质量水平使用、最后期限错过的百分比、以及质量水平的变化。
进度间隔数|II|从30到1014以1.2的乘法步距变化,其结果是每个预算有20个问题实例。图4表示作为结果的最优控制策略,其中b=3,100,000,|II|=1014。我们可以看到,控制策略确实展示了保持所使用的质量水平的趋势。
图5表示如解决问题实例所要求的计算中所发现的以及在模拟中实际测量的、20个问题实例在b=3,100,000时每个转换的平均收益。模拟中的平均收益迅速收敛到一个约8.27的值。计算中的平均收益需要更多的进度间隔才收敛到这个值,原因是(3)中的悲观近似。不过,根据约|II|=200的控制策略已经导致模拟中的约8.27的平均收益。换言之,要找到一个(接近)最优的控制策略,并不需要那么多的进度间隔。
其次,图6-8表示收益的三个要素,其中图6表示质量水平使用,图7表示最后期限错过的百分率,图8表示在|II|=1014时对所有问题实例的模拟中所测量的质量水平的平均增量。图中没有表示质量水平的平均减量,因为它几乎与质量水平的平均增量相同。如果预算增加,则更经常选择一个较高的质量水平,而最后期限错过的百分率在b=2,650,000时急速下降而跌落到零。较大的预算时最后期限错过百分率低,原因在于相对较高的最后期限错过代价。进一步可观察到平均增量和平均减量是低的。因此,可以认为所有三个问题目标都达到。
为了给出一个表示三个要素如何对平均收益做出贡献的例子,考察|II|=1014、b=3,100,000时的情形。此例有一个平均质量水平效用0.0033*1+0.0102*5+0.5953*7.5+0.3911*10=8.43,一个平均最后期限错过代价0*1000=0,以及一个平均质量水平增加代价0.0145*5=0.07及减少代价0.0144*6=0.09。这导致每帧的总平均收益为8.27。
通过连续逼近解决Markov决策问题要涉及一种状态向量,它含有对应II x Q中每个状态的值。一般将状态向量初始化为零向量。然后循环地为每个状态确定最优决策,并更新状态向量。当两个连续的状态向量含有(近乎)相同的项(每个转换的平均收益)时,即最小和最大差别在规定的不准确范围内时,该循环过程结束。
至于每个预算b,我们用不同的进度间隔数重复地解决相同的Markov决策问题,并用不同的方式来初始化状态向量。对于每个预算b,第一次,也就是用最低的进度间隔数(30)来解决Markov决策问题时使用零向量来初始化。对于每下一个的进度间隔数,则用先前的进度间隔数对运行的最后状态作插值而使状态向量初始化。这样,连续逼近算法预期只需要较少的循环就能收敛。
为了检验这个插值向量方法作业多么好,将它与总是选择零向量作为初始向量的直接方式作比较。为此,我们同时用这两种向量方法就b=3,100,000来解决Markov决策问题,其中进度间隔数从|II|=30到|II|=1749以乘1.5的步长变化。图9表示这两种方法所需的循环次数。图10表示所测量的这两种方法用Pentium II Xeon 400 MHz处理器的计算时间。在后一个图中也显示了插值向量方法的累积计算时间。该图显示,如果要解决对应大的进度间隔数的Markov决策问题,可能最好是使用插值向量方法,并分几次以增加的进度间隔数的方式解决Markov决策问题,因为这比直接按所请求的进度间隔数解决Markov问题可用更少的计算时间。
前面将对具有固定CPU预算的可升级媒体处理应用的质量水平控制模型化为Markov决策问题。该模型是以在里程碑处计算出来的应用的相对进度为基础的。定义了三个问题目标,即最大化对作业单元进行处理的质量水平,最小化最后期限错过数,以及最小化质量水平变化数。模型中的一个参数是进度间隔。
选择的进度间隔越多,问题的建模就变得越准确。解决Markov决策问题的导致了一个最优控制策略,它能以不多的开销被实时地运用。
为了评估这个方法,就一个可升级的MPEG-2解码器解决了共1140个问题实例。对于每个作为结果的控制策略,模拟了解码器的执行。从这个试验得出的结论是,尽管通过这个模型取得好的近似需要一些进度间隔,但用较少的进度间隔就能获得一个最优的控制策略。此外,可以认为就这个实验来说,该方法达到了三个问题目标。
在利用连续逼近解决Markov决策问题时,用一个插值向量方法对状态向量初始化。据观察,如果要解决对应大的进度间隔数的Markov决策问题,可能最好要使用插值向量方法,并分几次以增加的进度间隔数的方式解决Markov决策问题,因为这比直接按所请求的进度间隔数解决Markov问题可用更少的计算时间。
作为结果的质量水平控制策略可以被联机运用,并在应用的同一处理器上执行。
另一个作业保留方法是要使用在最先的下一个最后期限处的输出,这导致一个改变的相对进度
这例如适用于MPEG-2解码,其中在发生最后期限错过时,可以显示先前被解码的帧,并在一个帧期间后显现新解码的帧。不过可以以新的偏置值
用(1)来计算各里程碑处的相对进度。我们把这个方法称作跳过最后期限错过法。
跳过最后期限错过法由图11中所示的时间线例子说明。该例中,P=1,do=0。利用(1),得出ρ1=0.5、ρ2=0和ρ3=-0.5。相对进度在里程碑3已经跌落到零下,因此自里程碑2-即时间t=3-以来发生过
个最后期限错过。下一步,将ρ3改变成0.5,使用一个新的补偿量
然后找到ρ4=1以及ρ5=0。
注意可以将这个模型推广到允许在规定的限度内有负的相对进度。然而,这里假设低限为零。
在不失一般性的情况下,假设应用在里程碑m处于状态i。对于每个质量水平q,引入一个随机变量Xtq,该变量给出应用要在质量水平q的条件下处理一个类型t的作业单元所需要的时间。如果假设应用接收每个期间p的计算预算b,则可以如下地用ρm表达ρm+1。第一,在不考虑对相对进度的限制0和p情况下,找到一个新的相对进度
然而,如果这降到零下,则会遇到最后期限错过,因而要找到一个修正过的相对进度。此外,如果ρm-1 unb超过p,则处理器将因为输出缓冲器满而已经停止,在这种情况下,有一个修改过的相对进度p。如果运用保守的最后期限错过方法,则新的相对进度由下式给出
其中使用以下符号
如果适用跳过最后期限错过方法,则新的相对进度由下式给出
其中使用以下符号
假设Yρm,im,πm+1,q是一个随机变量,它给出应用在里程碑m+1处的相对进度ρm+1在进度间隔π内的概率,并给出在里程碑m+1处下一个作业单元的类型是tm+1的概率,假定在里程碑m处的相对进度是ρm,在里程碑m处下一个作业单元的类型是tm,并且选择质量水平q来处理这个作业单元。此外,假设Pr(tm,tm+1)表示一个类型tm+1的作业单元紧接着类型tm的作业单元的概率。则可以得出:
假设Ftq代表Xtq的累积分布函数,即Ftq(X)=Pr(Xtq≤x)。对于保守的最后期限方法,利用回归方程(3),可以得出,当0<x≤p时
对于跳过最后期限方法,利用回归方程(6),可以得出,当0<x<1时
当1≤x≤p时当对于跳过
不幸的是,ρm在进度间隔π(i)内的准确位置是未知的。通过选择该间隔中的最低值,获得ρm的一个悲观近似值。这给出近似值
假定以上成立,则转换概率pij q在保守的最后期限方法的情况下可以由下式约计
对于跳过最后期限方法来说可以由下式约计
显然,选择的进度间隔越多,对转换概率的建模(modeling)就越准确,因为(7)中的近似性更好。
注意保守的最后期限方法是跳过最后期限方法的一个最坏情形。所以,在运用跳过最后期限方法时,可以用保守的最后期限方法的转换概率来解决Markov决策问题。
解决Markov决策问题需要
的许多重复实例。首先计算和存储所有值
对进度间隔转换的概率来说需要O(|∏|2·|Q|·|T|)的空间复杂性,对类型转换的概率来说需要0(|T|2)的空间复杂性。假设|T|是小的,这仅当有少量的进度间隔时是可行的。否则,在运行中(on the fly)计算值
才是解决方案。然而,这导致许多冗余的计算,每个计算都包括访问一个累积分布函数。计算一个累积分布函数F具有对粒度F的对数时间的复杂性。
如果运用保守的最后期限方法,则以下述可替代方式计算转换概率常常是有益的。在不失一般性的情况下,假设应用在里程碑m时处于状态i。回想n=|II|且一个进度间隔的宽度
给出。利用悲观的近似(7),假设Pr(Δt(i)q=k)(其中1-n≤k≤n-1)代表在质量水平q下处理下一个类型t(i)的作业单元之后已经移动了k个进度间隔的概率。这个概率由下式给出
现在假设整数a和b由πa=π(i)和πb=π(i)所定义。则转换概率
也由下式给出
值
可以按对应进度间隔转换的概率的、在|II|上是线性的空间复杂性O(|∏|·|Q|·|T|)以及按对应类型转换的概率的空间复杂性0(|T|2),被事先计算并存储。计算转换概率的这个替代方法显著地加快解决Markov决策问题的速度。
图12示意性地表示一个按照本发明的系统1200。系统1200包含通过软件总线1208与中央处理单元1210通信的存储器1202。存储器1202包含计算机可读代码1204,它是设计用于按上述方式来确定为处理一个媒体帧所使用的CPU周期数量。此外,存储器1202还包含计算机可读代码1206,它是设计用来根据在一个里程碑处所计算的媒体处理应用的相对进度来控制媒体帧的质量。最好根据一个如上所述的为处理若干媒体帧而建模的Markov决策问题来设定处理媒体帧的质量。计算机可读代码可由一个存储设备1212来更新,该存储设备包含设计用来执行按照本发明的方法的计算程序产品。存储设备由一个与系统1200相连的适当的读取设备-例如CD读取器1214-读取。该系统既可以由硬件也可以由软件或者任何其它能运行软件的标准体系结构实现。
图13示意性地表示一个按照本发明的、包含按照本发明系统的一个实施例的电视机1310。这里,一个天线1300接收电视信号。任何能接收或再现电视信号的设备,例如碟式天线、电缆、存储设备、因特网或以太网,都能替代天线1300。接收器1302接收电视信号。除了接收器1302,电视机还含有可编程组件1304,例如可编程集成电路。这个可编程组件含有按照本发明的系统1306。电视屏1308显示由接收器1302接收的并由可编程组件1304处理的文件。电视机1310可选地可包含或者连接到一个提供电视信号的DVD播放器1312。
图14示意性地表示一个包含按照本发明系统的一个实施例的机顶盒1402的最重要的部分。这里,一个天线1300接收电视信号。该天线例如也可以是碟式天线、电缆、存储设备、因特网、以太网或任何能接收电视信号的设备。机顶盒1402接收电视信号。该信号例如可以是数字的。除了机顶盒中含有的、但在这里未予示出一般组件,机顶盒还含有按照本发明的系统1404。电视信号被显示在与机顶盒1402相连的电视机1406上。
应当注意的是上述实施例解释而不是限制本发明,所属技术领域的熟练人员在不偏离随附的权利要求书的范围的情况下就能设计许多可替代的实施例。在权利要求书中,任何置于括号之间的标注符都不应被认为是限制权利要求。“包含”一词并不排除存在除权利要求中所列举的以外的元件或步骤。元件之前的前置词“一个”并不排除存在多个这样的元件。本发明可以通过包含若干不同元件的硬件实现,可以通过适当编程的计算机实现。在枚举若干个装置的系统权利要求中,这些装置的若干个能被体现为同一个计算机可读的软件或硬件。某些措施在不同的从属权利要求中陈述,但这并不表明不能利用这些措施的组合。
Claims (6)
1.由媒体处理应用设定一个媒体帧的质量的方法,该方法包含以下步骤:
确定要用于处理该媒体帧的资源的量;和
根据在一个里程碑处计算的该媒体处理应用的相对进度来控制该媒体帧的质量;
其中,控制媒体帧的质量被模型化成一个包含状态的集合、决定的集合、转换概率的集合和收益的集合的Markov决策问题,并且该方法包含:
限定该状态的集合,以便包含媒体处理应用在一个里程碑处的相对进度以及一个先前媒体帧的先前所使用的质量;
限定该决定的集合,以便包含媒体处理应用能提供的多个质量;
限定该转换概率的集合,以便包含一个概率,该概率是当选择所述多个质量中的一个质量时从状态集合中位于当前里程碑的一个状态向状态集合中位于下一个里程碑的另一个状态进行转换的概率;以及
限定该收益的集合,以便包含一个与媒体帧的正质量有关的正收益、一个与最后期限错过有关的负收益、和一个与质量变化有关的负收益;
使用一个决策策略来求解这个Markov决策问题,并根据这个解答来设定媒体帧的质量。
2.按照权利要求1的设定一个媒体帧的质量的方法,其中,决策策略包含最大化所有转换的收益的总和的步骤。
3.按照权利要求1的设定一个媒体帧的质量的方法,其中,决策策略包含最大化每个转换的平均收益的步骤。
4.由媒体处理应用设定一个媒体帧的质量的系统(1200),该系统包含:
确定装置(1204),用来确定要用于处理该媒体帧的资源的量;和
控制装置(1206),用来根据在一个里程碑处计算的该媒体处理应用的相对进度来控制该媒体帧的质量;
其中,控制装置(1206)被用来将对媒体帧的质量的控制模型化成一个包含状态的集合、决定的集合、转换概率的集合和收益的集合的Markov决策问题,其中:
状态的集合包含媒体处理应用在一个里程碑处的相对进度以及一个先前媒体帧的先前所使用的质量;
决定的集合包含媒体处理应用能提供的多个质量;
转换概率的集合包含一个概率,该概率是当选择该多个质量中的一个质量时从状态集合中位于当前里程碑的一个状态向状态集合中位于下一个里程碑的另一个状态进行转换的概率;以及
收益的集合包含一个与媒体帧的正质量有关的正收益、一个与最后期限错过有关的负收益、和一个与质量变化有关的负收益;以及
控制装置(1206)进一步被用来使用一个决策策略求解这个Markov决策问题并根据这个解答设定媒体帧的质量。
5.一种包含按照权利要求4的系统的电视机(1310)。
6.一种包含按照权利要求4的系统的机顶盒(1402)。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP01204791.6 | 2001-12-10 | ||
EP01204791 | 2001-12-10 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1602466A CN1602466A (zh) | 2005-03-30 |
CN1318966C true CN1318966C (zh) | 2007-05-30 |
Family
ID=8181398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB028245512A Expired - Fee Related CN1318966C (zh) | 2001-12-10 | 2002-12-09 | 设定媒体帧的质量的方法和系统 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20050041744A1 (zh) |
EP (1) | EP1483901A2 (zh) |
JP (1) | JP2005512465A (zh) |
KR (1) | KR20040068215A (zh) |
CN (1) | CN1318966C (zh) |
AU (1) | AU2002353299A1 (zh) |
WO (1) | WO2003051039A2 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1685718A1 (en) * | 2003-11-13 | 2006-08-02 | Koninklijke Philips Electronics N.V. | Method and apparatus for smoothing overall quality of video transported over a wireless medium |
US9177402B2 (en) * | 2012-12-19 | 2015-11-03 | Barco N.V. | Display wall layout optimization |
US9798700B2 (en) * | 2014-08-12 | 2017-10-24 | Supported Intelligence | System and method for evaluating decisions using multiple dimensions |
US10546248B2 (en) * | 2014-12-31 | 2020-01-28 | Supported Intelligence, LLC | System and method for defining and calibrating a sequential decision problem using historical data |
US10460249B2 (en) * | 2015-09-30 | 2019-10-29 | Supported Intelligence, LLC | System and method for projecting a likely path of the subject of a sequential decision problem |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7254116B2 (en) * | 2000-04-07 | 2007-08-07 | Broadcom Corporation | Method and apparatus for transceiver noise reduction in a frame-based communications network |
US20030058942A1 (en) * | 2001-06-01 | 2003-03-27 | Christian Hentschel | Method of running an algorithm and a scalable programmable processing device |
-
2002
- 2002-12-09 US US10/497,866 patent/US20050041744A1/en not_active Abandoned
- 2002-12-09 WO PCT/IB2002/005276 patent/WO2003051039A2/en active Application Filing
- 2002-12-09 JP JP2003551980A patent/JP2005512465A/ja active Pending
- 2002-12-09 EP EP02788320A patent/EP1483901A2/en not_active Withdrawn
- 2002-12-09 CN CNB028245512A patent/CN1318966C/zh not_active Expired - Fee Related
- 2002-12-09 KR KR10-2004-7008963A patent/KR20040068215A/ko not_active Application Discontinuation
- 2002-12-09 AU AU2002353299A patent/AU2002353299A1/en not_active Abandoned
Non-Patent Citations (2)
Title |
---|
ASAP-A FRAMEWORK FOR EVALUATING RUN-TIME SCHEDULERS IN EMBEDDED MULITIMEDIA END-SYSTEMS KALAVADE A ET AL,PROCEEDINGS OF THE ACM MULTIMEDIA 98,Vol.6 1998 * |
TERMINAL QOS OF ADAPTIVE APPLICATIONS MOGHE P ET AL,BELL LABS TECHNICAL JOURNAL,Vol.3 No.2 1998 * |
Also Published As
Publication number | Publication date |
---|---|
JP2005512465A (ja) | 2005-04-28 |
CN1602466A (zh) | 2005-03-30 |
AU2002353299A1 (en) | 2003-06-23 |
WO2003051039A3 (en) | 2004-09-16 |
EP1483901A2 (en) | 2004-12-08 |
WO2003051039A2 (en) | 2003-06-19 |
US20050041744A1 (en) | 2005-02-24 |
AU2002353299A8 (en) | 2003-06-23 |
KR20040068215A (ko) | 2004-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wust et al. | Qos control strategies for high-quality video processing | |
US9262216B2 (en) | Computing cluster with latency control | |
US20100191349A1 (en) | Method and system for operating in hard real time | |
Dinda | Online prediction of the running time of tasks | |
Poladian et al. | Leveraging resource prediction for anticipatory dynamic configuration | |
US20210406147A1 (en) | Apparatus and method for a closed-loop dynamic resource allocation control framework | |
CN106293947B (zh) | 虚拟化云环境下gpu-cpu混合资源分配系统和方法 | |
CN111902790B (zh) | 一种调频方法、装置及计算机可读存储介质 | |
Abeni et al. | Efficient and robust probabilistic guarantees for real-time tasks | |
CN104883585A (zh) | 显示媒体数据的方法、设备及系统 | |
CN1318966C (zh) | 设定媒体帧的质量的方法和系统 | |
US20210406075A1 (en) | Apparatus and method for a resource allocation control framework using performance markers | |
Kang et al. | DeepRT: predictable deep learning inference for cyber-physical systems | |
US8631054B2 (en) | Scaled exponential smoothing | |
CN110162272B (zh) | 一种内存计算缓存管理方法及装置 | |
CN116028193B (zh) | 一种混部集群的大数据任务动态高能效调度方法和系统 | |
CN116894612A (zh) | 一种储氢系统容量配置优化方法、装置、设备及存储介质 | |
CN1883205A (zh) | 用于平滑通过无线介质传送的视频的总体质量的方法和设备 | |
US20060192850A1 (en) | Method of and system to set an output quality of a media frame | |
CN107133104B (zh) | 一种分布式流数据处理方法 | |
Wüst et al. | Quality control for scalable media processing applications | |
Zhou et al. | CPU frequency scheduling of real-time applications on embedded devices with temporal encoding-based deep reinforcement learning | |
CN116088662A (zh) | 功耗管理方法、多处理单元系统和功耗管理模组 | |
Pettis et al. | Statistically optimal dynamic power management for streaming data | |
CN108471362B (zh) | 资源分配预测方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |