PRAM基于Markov模型高效日历队列算法.docVIP

  • 5
  • 0
  • 约1.27万字
  • 约 23页
  • 2018-08-11 发布于福建
  • 举报
PRAM基于Markov模型高效日历队列算法

PRAM基于Markov模型高效日历队列算法   摘 要:基于有限生灭过程建立了日历队列的数学模型,提出了一种基于马尔可夫链的动态预测算法(predict resize algorithm based on Markov,PRAM),弥补了上述方法的不足。给出了算法的相关数学分析,并将其实现在J2EE应用服务器OnceAS中。系统实验表明,当事件到达高度密集或到达分布变化剧烈时,该算法可以解决日历队列的性能不稳定问题,使其仍保持出入队时间复杂度??O??(1)的特性,并且性能更优。??   关键词:日历队列;马尔可夫;放缩算法;应用服务器?ぶ型挤掷嗪牛?TP301.6 文献标志码:A    文章编号:1001-3695(2008)09-2625-06   PRAM:efficient calendar queue algorithm based on Markov model   ??ZHANG Lei????1a,2??,LI Yang????1a,1b??,ZHANG Wen??bo????1a??,DENG Liu??jun????1a,2??   ??(1.a.Technology Center of Software Engineering,b.Key Laboratory of Computer Science, Institute of Software, Chinese Academy of Sciences, Beijing 100080, China;2.Graduate School, Chinese Academy of Sciences, Beijing 100039, China)??Abstract:This paper presented a new approach called PRAM,which determined the optimum operating parameter of calendar queue by predicting the future events set based on Markov chain.It implemented the PRAM prototype in the J2EE application server――OnceAS. The experiment results show that PRAM offer consistent ??O??(1) time complexity over uneven event distributions and achieve better performance than the other approaches.??   Key words:calendar queue;Markov;resize algorithm;application server?お?      0 引言??      离散事件模拟目前被广泛应用于各种研究领域以模拟一个复杂系统的行为。在离散事件模拟的场景中,一个系统被划分成若干个逻辑组件,各个组件通过生成带有执行时间戳的消息事件来进行交互。所有还没有得到处理的消息事件就构成了等待事件集合(pending event set,PES)。一个PES可以被表示为一个优先级队列,在该队列中,拥有最小时间戳的消息事件有着最高的执行优先级。通常情况下,离散事件模拟系统的性能主要取决于消息事件出入队的时间复杂度,但是Comfort[1]在研究中发现,当等待事件集合很大时,模拟系统40%左右的时间会耗费在对消息事件的调度上。??   日历队列[2]是一种基于链表数组的数据结构,它提供了对PES大小不敏感的时间复杂度为??O??(1)的出入队操作。为了保持出入队时间复杂度为??O??(1)的特性,日历队列在运行过程中必须保持链表数组中等待事件分布的均匀性,并确保任一链表中等待事件的数目要约束在一定范围内。因此,在离散事件模拟系统的运行过程中,随着等待事件的增长和减少,日历队列的大小也会相应地进行放缩调整。但是,日历队列的每一次放缩都会触发日历队列的重建,这种重建对于日历队列而言代价是高昂的。如果等待事件平稳到达,则其对日历队列的放缩产生的影响比较小。然而,当等待事件到达高度聚集或到达分布变化剧烈时,日历队列的静态放缩算法无法响应这种动态变化,将会频繁地进行放缩而极大影响其性能。针对这个问题,目前已有的研究主要通过对日历队列进行局部采样来检测等待事件的聚集到达,然后根据检测结果给出优化的放缩参数,以期从整体上可以减少放缩次数,如DCQ(dynamic calendar queue)[3]、SNOOPy CQ(statistically enhanced with

文档评论(0)

1亿VIP精品文档

相关文档