系统划分
映射
概念
从上图可以看出,提高系统性能的方法有三种:改进体系结构、重写应用程序和使用不同的策略。
映射是将行为层次转化为结构和执行。
最后,它包括分区和映射。分区就是分配(选择模块)和绑定(给组件一些功能);映射包括绑定和调度(执行顺序)。最后,将执行综合结果。其实就是我们选择什么设备,它会执行什么功能,执行顺序是什么。这就是过程。
抽象层次
低级:RTL或网表。将数字电路映射到特定设备(FPGA、ASIC);系统参数(如面积、延时)相对容易决定。
高级:系统级。选择最优设计(例如,空之间的尺寸);难以理解或决定的系统参数(通过一些模型、分析、模拟和原型实现)。
比如我们遇到这样一个问题:我们是把所有的任务放在一个CPU上还是平衡负载?最后发现负载均衡是省电和实现更好并行化的最佳途径。但是当然也不能说这样的均衡后效果会大幅度提高N倍,问题还是很多的。比如数据一致性,所以分配任务的时候要非常注意这个问题。
上图其实是映射关系:N对1,一对一。
这里要考虑以下几个问题:成本:用了多少处理器?延迟:是频率,当然越快越好。能在最短的时间内解决问题。但这两件事是矛盾的。我们要增加成本,减少延迟;反之亦然,达拉斯到礼堂当我们进行设计时,我们需要提出一些约束条件,使设计得到最优解。
用下图展示一下:
假设任务长度都一样,我们发现如果只用一个cpu,延迟已经超过了我们的要求,使用四核可以很好的满足我们的要求。
代价函数
对于成本函数,我们首先定义一些变量。系统成本[美元],延迟[秒],功耗[瓦].然后我们对这三者都有一个估计函数,然后我们可以得到:
在这里,我们可以看到,我们为这个函数加权了不同的变量,我们需要的是优化。
所以有一个问题:
分离法
测定方法(exat法)
枚举法
枚举就是一个个列出来,然后找到最好的。这就是枚举,说到大数据就很让人沮丧。
整数线性程序
ILP是一种多目标优化算法,非常重要。接下来将详细描述该算法。
这里说一下ILP的组成部分:成本函数和约束函数。我们的目标是在满足约束条件下最小化成本函数。
接下来说一下0/1 IP问题,就是加权系数是0还是1。
举个例子比什么都好:
让我们把这个问题变成一个一般性的问题:
这里有一个例子:
使用ILP的好处是可以增加约束,现在很多人都在用这种方法。
关于上面的实际问题,我们如何列出代码?
这种方法也可以用来最大化问题:
整数规划是一个完全的NP问题。实际上,运行时间可能会呈指数级增长,但可以解决数千个变量。IP模型可以作为启发式优化方法的起点。
接下来举个例子,你就更了解ILP了。
Matlab代码如下:
运行结果如下:
启发式方法
建设性方法
随机映射
分层聚类
迭代方法
克尼根-林算法
模拟退火
进化算法
相关建议:
1.
2.
3.
4.
5.
1.《系统分区 嵌入式系统之系统分区(system partition)详解》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《系统分区 嵌入式系统之系统分区(system partition)详解》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/fangchan/1211719.html