标题中的"基于申威众核处理器的混合并行遗传算法"指的是在申威众核处理器架构下实现的一种优化的并行遗传算法。申威众核处理器是一种高性能的计算机处理器,通常用于处理大规模的计算任务。这种处理器的特点是拥有大量的核心,能够同时执行多个计算任务,从而提高计算效率。
混合并行遗传算法(HBPGA)是解决计算密集型问题的一种方法。传统的遗传算法在处理这类问题时,适应度函数的计算时间会随着种群规模或进化代数的增长而迅速增加,导致算法的收敛速度降低。HBPGA采用了一种“粗粒度-主从式”的并行结构,将计算任务分解为更小的部分,分别在不同的处理器核心上并行执行,以加快计算速度和提高收敛效率。
文章中提到的"神威‘太湖之光’"是全球TOP500超级计算机列表中排名第一的系统,它使用了申威众核处理器。在这样的平台上实现HBPGA,可以充分利用其强大的计算能力,实现更高效的并行计算。
HBPGA结合了MPI(Message Passing Interface)和Athread两种编程模型。MPI是一种用于分布式内存系统中的并行编程接口,适合于处理跨节点的通信和数据交换。Athread则可能是申威处理器平台上的原生线程库,用于在同一处理器内核上的多线程并行处理。通过结合这两种模型,HBPGA能够在不同层次上进行并行化,既能在不同处理器核心间分配任务,也能在单个核心内部利用多线程进行计算。
实验结果表明,当从核数量达到16×64时,HBPGA的最大加速比达到了544,这意味着相对于单核或一级并行架构,算法的执行速度提高了544倍。从核加速比超过31,意味着每个从核相对于单核执行都有显著的性能提升。
关键词“众核”指的是具有大量处理核心的处理器设计,这种设计旨在提高处理器在并行计算任务中的性能。“MPI”和“Athread”是并行计算中常用的编程工具,前者用于分布式并行,后者用于共享内存并行。文章的中图分类号“TP311.52”和“TP338.6”分别对应计算机科学技术和计算机系统结构领域,文献标志码“A”表示这是一篇应用研究类文章。
这篇论文介绍了一种针对申威众核处理器优化的混合并行遗传算法,通过结合MPI和Athread实现两级并行,提高了计算密集型任务的处理效率,并在神威“太湖之光”超级计算机上得到了显著的性能提升。这种并行算法对于解决大规模计算问题和优化计算资源的利用具有重要意义。