基于生命游戏的算法
用硬件加速器的设计思想,实现多微处理器的并行调度算法,为说明并行调度算法,我们可用“植被”(Vegetation)--兔子(rabbit)--狐狸(fox)计算模型来描述
在该计算模型中,系统任务用植被表示,处理器用兔子表示,终止处理器运行机制用狐狸表示,假设计算模型为一个8*8的生存空间数组结构。
每隔一个t时间,由随机数发生器对任意方格中的植被生长长度加 1,植被生长的最大尺度为8,此时空间中将允许有兔子出现,若方格中的植被超过t0时,说明该领地上的兔子已经死掉。此后该领地不再生长植被(即某个处理器因故障退出系统)另外规定该空间最多允许有8只兔子,每只兔子吃完一个方格内植被需要时间为3t,每只兔子的生命周期为24t(即处理器不能跨行处理任务)。在该空间允许有一只狐狸存在,狐狸的生命周期为整个生存空间不再具有植被且兔子必须全部死亡,同时,当一只兔子吃完它的领地上的植被后,狐狸必须立即吃掉该兔子(即系统终止当前已处理完任务的处理器继续运行)
1 2 34 5 67 8
_________________________
1| | | | | | | | |
--------------
2| | | | | | | | |
--------------
3| | | | | | | | |
--------------
4| | | | | | | | |
--------------
5| | | | | | | | |
--------------
6| | | | | | | | |
--------------
7| | | | | | | | |
--------------
8| | | | | | | | |
--------------