[发明专利]一种嵌入式软件体系结构级能耗建模方法无效
申请号: | 201110348973.0 | 申请日: | 2011-11-08 |
公开(公告)号: | CN102426662A | 公开(公告)日: | 2012-04-25 |
发明(设计)人: | 郭兵;沈艳;刘啸滨;陈晓丰;王继禾;伍元胜;刘云本;韩洪良;王敞 | 申请(专利权)人: | 四川大学 |
主分类号: | G06N3/08 | 分类号: | G06N3/08 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 610065 四川*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公布了一种嵌入式软件体系结构级能耗建模方法。该方法首先对5个体系结构级软件特征量(有效代码行数LOC、构件数量TC、平均构件接口复杂度Rc、平均路径复杂度Rp、平均构件耦合度CF)进行度量,对度量值进行预处理后作为BP神经网络的输入值,同时通过功耗仿真实验平台HMSim获取样本程序的能耗值E作为BP神经网络的输出值,然后确定BP神经网络的具体结构,包括隐层数、隐层节点数、隐层传递函数和输出层传递函数,对BP神经网络进行训练得到BP神经网络隐层的权值和阈值,最后得到BP神经网络的能耗预测值,再与目标程序的实际能耗值进行对比。通过实验得出该方法的平均误差保持在20%的范围内,说明以软件特征量为基础的嵌入式软件体系结构级能耗建模方法是有效的。 | ||
搜索关键词: | 一种 嵌入式 软件 体系结构 能耗 建模 方法 | ||
【主权项】:
1.一种嵌入式软件体系结构级能耗建模方法,其特征在于该方法的步骤如下:1)对大量样本程序的5个体系结构级软件特征量(有效代码行数LOC、构件数量TC、平均构件接口复杂度Rc、平均路径复杂度Rp、平均构件耦合度CF)分别进行度量;2)对5个软件特征量的度量值进行预处理,处理后的值作为BP神经网络的输入值;3)在功耗仿真实验平台HMSim上运行样本程序,获得样本程序的能耗值E,E将作为BP神经网络的输出值;4)确定BP神经网络的具体结构,包括隐层数、隐层节点数、隐层传递函数和输出层传递函数;●隐层数的确定:隐层数多少决定了网络误差,但过多的隐层数会导致网络复杂化,增加网络训练时间和“过拟合”的倾向,单隐层的BP神经网络可以逼近任何在闭区间内的连续函数,一个三层的BP网络可完成任意的n维到m维的映射,所以隐层数确定为1,●隐层节点数的确定:BP神经网络中,隐层节点数对BP网络性能影响巨大,但目前理论上还缺乏科学的和普遍的方法用于隐层节点数的确定,一般采用以下经验公式确定隐层节点数n1:
其中,n为输入层节点数,m为输出层节点数,a为1到10之间的常数,对应到体系结构级能耗模型中,输入层包括有效代码行数、构件数量、平均构件接口复杂度、平均路径复杂度和平均构件耦合度5个输入量,因此,输入层节点数为5,输出层为平均功耗
输出层节点数为1,所以n1的取值范围为3-12,●隐层传递函数和输出层传递函数的确定:针对单隐层BP神经网络,输入层和隐层传递函数一般采用tansig函数,输出层传递函数一般采用purelin函数,通过多组实验可以发现,Trainlm函数在隐层节点数为11的时候,其收敛速度和逼近误差都能达到令人满意的效果,所以BP神经网络的训练函数使用Trainglm,训练函数的隐层结点数为11,5)输入样本程序软件特征量度量值和能耗值对BP神经网络进行训练,通过训练确定BP神经网络隐层的权值和阈值;6)输入目标程序的特征量到训练好的BP神经网络中,得到能耗预测值,再与目标程序的实际能耗值进行对比,验证建模方法的有效性。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川大学,未经四川大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201110348973.0/,转载请声明来源钻瓜专利网。
- 上一篇:具有机械过载保护的风机升降梯
- 下一篇:充电座