发明名称 一种嵌入式软件源程序结构级能耗优化评价方法
摘要 本发明在研究现有评价方法的基础上,提出一种嵌入式软件源程序结构级的层次灰色评价模型。首先构造判断矩阵,然后构造评价样本矩阵和确定评价灰类,计算灰色评价权向量和矩阵,最后计算综合评价值。针对5个典型的C语言源程序,分别是冒泡排序(Bubble)、矩阵乘法(Matrix)、约瑟夫环算法(Josephus)、斐波拉契数列(Fibonacci)和八皇后算法(Queen),分别使用循环展开和循环不变量外提方法对源程序进行优化。实验结果表明,循环展开优化方法的评价灰类等级为2,属于良好效果;循环不变量外提方法的评价灰类等级为3,属于中等效果。循环展开优化方法的效果好于循环不变量外提方法,能使系统有较大的节能和更高的运行速度。
申请公布号 CN102004644A 申请公布日期 2011.04.06
申请号 CN201010590561.3 申请日期 2010.12.16
申请人 四川大学 发明人 郭兵;沈艳;胡俊
分类号 G06F9/44(2006.01)I 主分类号 G06F9/44(2006.01)I
代理机构 代理人
主权项 1.一种嵌入式软件源程序结构级能耗优化评价方法,其特征在于该方法的步骤如下:1)构造判断矩阵首先,根据AHP方法中的1-9标度法构造判断矩阵,尽量客观地获得指标的权重,对事物特性的重要性比较分成5档,对比较结论通常取1、3、5、7、9及其倒数进行度量,2、4、6、8表示上述相邻判断的中间值,根据评价指标间重要性的相互比较建立判断矩阵:<img file="835659DEST_PATH_IMAGE001.GIF" wi="208" he="98" />其中,<img file="853294DEST_PATH_IMAGE002.GIF" wi="27" he="26" />表示元素i 和元素j的比较重要性之比;2)构造评价样本矩阵和确定评价灰类在为构造m个评价者对n个指标的评价集样本矩阵,m个不同的源程序代表m个评价者,同样的优化方法改变不同源程序后带来的变化效果可用评价分数量化,本发明通过采用实验数据代替专家打分法给出评价分数,可尽量避免过多的主观性判断,从而构造出评价样本矩阵: <img file="206915DEST_PATH_IMAGE003.GIF" wi="322" he="115" />其中,评价值<img file="864161DEST_PATH_IMAGE004.GIF" wi="22" he="25" />代表评价分数;借鉴《卓越绩效评价准则》和《卓越绩效评价准则实施指南》两个国家标准,结合实验环境的具体情况,在下表中给出本评价方法的评分标准,分为4个评价灰类,数据处在其范围内,可在区间内取值:<tables num="0001"><table><tgroup cols="5"><colspec colname="c001" colwidth="15%" /><colspec colname="c002" colwidth="22%" /><colspec colname="c003" colwidth="19%" /><colspec colname="c004" colwidth="28%" /><colspec colname="c005" colwidth="13%" /><tbody><row><entry morerows="1">赋值分数</entry><entry morerows="1">是否节能</entry><entry morerows="1">指令数</entry><entry morerows="1">性能</entry><entry morerows="1">评价灰类</entry></row><row><entry morerows="1">3.5-4</entry><entry morerows="1">节能35%以上</entry><entry morerows="1">减少30%以上</entry><entry morerows="1">执行时间减少30%以上</entry><entry morerows="1">1</entry></row><row><entry morerows="1">2.5-3.4</entry><entry morerows="1">节能20%-35%</entry><entry morerows="1">减少20%-30%</entry><entry morerows="1">执行时间减少20-30%</entry><entry morerows="1">2</entry></row><row><entry morerows="1">1.5-2.4</entry><entry morerows="1">节能10%-20%</entry><entry morerows="1">减少10%-20%</entry><entry morerows="1">执行时间减少10-20%</entry><entry morerows="1">3</entry></row><row><entry morerows="1">0-1.4</entry><entry morerows="1">节能5%-10%或者能耗反而增加</entry><entry morerows="1">减少5-10%或者反而增加</entry><entry morerows="1">执行时间减少5-10%或者执行时间反而增大</entry><entry morerows="1">4</entry></row></tbody></tgroup></table></tables>为了反映评价对象属于某类的程度,需要根据具体的评价问题确定评价灰类的等级数和灰类的白化函数;3)计算灰色评价权向量和矩阵对于受评对象的各项评价指标的评价值,评价灰类e对评价指标的灰色评价系数记为:<img file="594220DEST_PATH_IMAGE005.GIF" wi="123" he="45" />各项评价指标对于受评指标属于各个评价灰类的总灰色评价系数记为:<img file="59836DEST_PATH_IMAGE006.GIF" wi="104" he="46" />受评对象的各项评价指标主张评价灰类e的灰色评价权记为:<img file="318779DEST_PATH_IMAGE007.GIF" wi="73" he="49" />考虑到灰类有g个,故评价灰类e的灰色评价权向量为:<img file="728901DEST_PATH_IMAGE008.GIF" wi="150" he="33" />将每个评价指标对于各评价灰类的灰色评价权向量综合后,可构造出一个受评对象的所属指标对于各评价灰类的灰色评价权矩阵为:<img file="997071DEST_PATH_IMAGE009.GIF" wi="202" he="136" />;4)计算综合评价值在评价系统中,评价指标的权重向量<img file="723719DEST_PATH_IMAGE010.GIF" wi="129" he="25" />,计算<img file="809355DEST_PATH_IMAGE011.GIF" wi="40" he="20" />,表示评价对象在各个综合状况灰类程度的描述,可按最大值原则确定其所属灰类等级,但是由于这种判断原则有时丢失信息太多而失效,而且不能直接用于评价对象间的优劣排序,因此,我们还需要进一步处理使其单值化,计算出综合评价值<img file="582139DEST_PATH_IMAGE012.GIF" wi="140" he="26" />,根据<img file="998208DEST_PATH_IMAGE013.GIF" wi="14" he="20" />值参照各灰类评价等级的量化值,确定被评对象的等级,或者通过多个评价对象综合评价值的比较进行排序选优。
地址 610065 四川省成都市武侯区一环路南一段24号