【技术实现步骤摘要】
一种用于异构系统的遗传算法
本专利技术属于信息系统调度领域,更具体地,涉及一种用于异构系统的遗传算法。
技术介绍
现代高性能计算系统中,异构系统是一种很常见的系统。例如,天河2号和天河3号都是异构的多处理器系统。在异构系统上执行的应用程序对处理方案的执行时间方面往往都有一定的期限。并且,随着大数据时代的到来,各国对高性能计算的性能要求不断增加,人们需要更加快速的完成任务,因此,在异构系统上提出一个执行时间更短的方案成为了一个研究热点,该类研究往往具有极高的商业价值和学术价值。在异构系统上,对于相同的任务,其在不同处理机上的执行时间往往不同,对于同一个处理机,其访问不同内存获取数据所消耗的时间也往往不同,因此,如何将不同的任务分配到不同的处理机上,如何将不同的数据分配到不同的内存上,如何安排任务执行行为/数据访问行为的执行顺序,从而使得总的执行时间最短就成为了研究的中心问题。这里,将该问题定义为异构系统上的任务调度与数据分配问题(heterogeneousdataallocationandtaskscheduling(HDATS))。在相关的研究中,对于异构系统上的 ...
【技术保护点】
1.一种用于异构系统的遗传算法,其特征在于,包括以下步骤:S1:种群初始化,生成一个种群,所述的种群包括若干个个,而Mapping Part的元素则通过随机选定,且同数据同内存,所述的同数据同内存表示如下:对于Sequence Part中的Tn,通过Mapping Part的Pn与Sequence Part中的Tn对应;对于Sequence Part中的异构系统的拓扑图的访问内存操作操作,通过Mapping Part的异构系统的拓扑图的n号内存与Sequence Part中的异构系统的拓扑图的访问内存操作操作对应;S2:评价个体,计算种群中每个个体的执行时间;S3:判断种群 ...
【技术特征摘要】
1.一种用于异构系统的遗传算法,其特征在于,包括以下步骤:S1:种群初始化,生成一个种群,所述的种群包括若干个个,而MappingPart的元素则通过随机选定,且同数据同内存,所述的同数据同内存表示如下:对于SequencePart中的Tn,通过MappingPart的Pn与SequencePart中的Tn对应;对于SequencePart中的异构系统的拓扑图的访问内存操作操作,通过MappingPart的异构系统的拓扑图的n号内存与SequencePart中的异构系统的拓扑图的访问内存操作操作对应;S2:评价个体,计算种群中每个个体的执行时间;S3:判断种群中执行时间最小的个体是否低于最低可接受执行时间,如满足,跳出算法结束;如不满足,跳至S4;S4:通过2-锦标赛选择法,形成新的种群,定义为第一新种群;S5:对新种群中的个体进行交叉以产生基因重组,交叉断点为随机生成,交叉完成后需对子代个体进行修正,符合“同数据同内存”限制;S6:S5交叉后,对种群中的每个个体进行变异操作,变异点为随机生成,在变异完成后需对子代个体立即进行修正,使其符合“同数据同内存”限制,跳至S2。2.根据权利要求1所述的遗传算法,其特征在于,所述的S2包括以下内容:S2.1:令数组LT的内容为个体的SequencePart,即LT为任务的执行序列;S2.2:定义数组RT内容为异构系统的各个处理机的最早就绪时刻,将其元素全部初始化为0,RT[pj]为处理机Pj的最早就绪时刻;数组ST内容为各任务开始执行时间,ST[ti]为任务Ti的开始执行时间;数组FT内容为各任务执行结束时间,FT[ti]为任务Ti的执行结束时间;S2.3:定义weight[ti]为任务ti的执行用时,所述的weight[ti]通过下式进行求取:weight[ti]=Size[ti]/speedx其中,所述的Size[ti]为任务大小,所述的speedx为对应的处理机处理速度;S2.4:定义DAT[ti]为任务的就绪时间,其值为任务ti在异构系统拓扑图上所有前继的...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。