可重构系统软硬功能划分及任务调度技术研究
发布时间:2020-09-17 12:57
随着FPGA容量的与日俱增以及自动设计技术的迅猛发展,基于可重构逻辑器件的可重构计算技术正迅速地成熟起来。可重构计算结合了传统硬件和软件实现方案的优点,既具有硬件并行计算的高性能,又具有软件的灵活性,是实现高性能计算的一个创新性的途径,已成为业界的研究热点。它在高性能计算领域具有非常好的应用前景,但也带来了许多新的挑战,包括可重构系统上应用的软/硬功能划分、软/硬任务调度、硬件任务布局和可重构资源管理等。 针对可重构系统面临的挑战,本文开展的主要工作包括如下几个方面: 1、提出了一种面向动态可重构系统的基于配置预取和任务重用的混合任务调度算法CTHTSA。传统任务调度算法(包括单CPU上的任务调度和多CPU上的并行任务调度)为可重构系统上的软硬任务调度研究提供了一定的参考,但是不能满足可重构计算系统的需要。而目前的可重构系统的任务调度研究大部分没有考虑CPU和FPGA的协同执行或针对硬件任务的配置时间因素,只单独运用了某一种优化手段,优化效果有限。针对这种情况,CTHTSA算法充分利用目前可重构系统中丰富的CPU核和FPGA资源,实现软件任务和硬件任务的并行执行,并通过配置预取和任务重用来隐藏硬件任务的配置开销,以进一步减少程序执行时间。实验结果表明该算法能有效提高系统的执行性能。 2、提出了一种基于改进遗传算法和配置预取调度的软硬功能划分算法IGCPSPA。该算法将程序的划分和调度结合起来,首先对问题进行编码,完成问题域向解空间的映射,然后在进化过程中采用赌轮和精英保留的选择策略、自适应交叉和变异策略对个体进行优化,进化到中后期时采用爬山算法对个体进行邻域优化搜索,最终获得了一个较优的软硬功能划分方案。采用基于配置预取的调度算法对划分方案进行评价,调度算法充分利用CPU核与FPGA并行工作,并在调度过程中采用配置预取策略以隐藏系统的重构开销,从而提高了系统整体的执行性能。实验结果表明了相对于现有的软硬件自动划分方法,本文提出的划分方法的有效性。 3、提出了一种基于任务紧迫度和布局紧密度的在线任务调度算法TUPC。与现有调度算法的FCFS调度方式不同,该算法综合考虑相邻任务的相关特征,选取任务紧迫度高的任务优先进行调度,同时在调度过程中选择布局紧密度高的区域对硬件任务进行布局。实验结果表明,该算法能够有效提高任务调度和布局的质量,调度成功率优于目前的主流调度算法。 4、构建了异质可重构器件模型和任务模型,并提出了芯片负载率(Chip Load, CL)和特殊负载率(Special Load, SL)的概念,通过HM-FF和HT-FF算法测试证明了CL和SL对调度性能的影响。在分析HT-FF算法性能瓶颈的基础上,提出了基于区域划分布局的调度算法SARP,并进一步提出了一种改进的区域划分布局调度算法——基于区域划分布局共享的调度算法SARSP。实验结果表明SARSP算法能够有效地降低异质可重构结构下任务调度的拒绝率。
【学位单位】:解放军信息工程大学
【学位级别】:博士
【学位年份】:2011
【中图分类】:TP338
【部分图文】:
信息工程大学博士学位论文从而能够满足不同 HPC 应用需求,提高计算效率。相对于目前的 X86 处理器而言,FPGA一般运行在较低的时钟频率下,具有较高的内存带宽、突出的并行处理能力(包括指令、数据及线程级的并行)和出色的根据应用环境的硬件定制能力。与在服务器上增加一颗处理器/内核相比,在服务器上增加一颗 FPGA 协处理器,一般性能可以提高 2 至 3 倍,而功耗则降低 40%,如果根据应用情况对算法进行优化,性能甚至可以提高 10 倍以上。
图 2 Surrey 大学可重构 SOC 框图学的 Morphoing System 工程提出的一种粗粒度的可重构结构64 个可重构元胞(Reconfigurable Cell, RC)排成的阵列,每个算单元(ALU-MULT)、两个多路选通器(MUXA、MUXB),可应用于多媒体数据处理和图像处理等[18]。公司和厂商也推出了相应的高性能可重构计算平台相关产品的 SRC-6 硬件平台和 Carte 软件环境[19][20],Cray公司的XD1超构特定应用计算平台 Altix/RASC[22]、StarBridge 公司的 HC-llatech 公司的 Ben 系列 FPGA 卡、DIME 系统和 FUSE 软件[24随着可重构计算技术的发展以及人们对高效能计算的更高追建造下一代超级计算机的重要技术。术概述算发展历史采用一种新型的计算模式,由通用 CPU 负责根据应用特点,
传统的 CPU 计算是一种基于时域的计算模式,计算问题被分解成时域上的运算序列,通过分时复用资源来完成计算;ASIC 则是一种基于空域的计算模式;而可重构计算是一种时/空域上的复合计算模式。图3显示了三种计算模式处理y = A*x*x + B*x + C的过程[38]。图 3 三种计算模式的比较图 3(a)中问题 1 被分解为 5 条指令,依次顺序执行每条指令将输出最终运算结果。从其计算过程可知,虽然 CPU 的硬件结构固定不变,但通过不同的指令流能够实现不同的功能,即 CPU 计算具有很高的通用性。这是 CPU 计算的优点,同时也造成了它的一系列缺点,包括:不能为特定的应用算法优化内部结构;指令集的有限性造成向硬件映射效率的不理想;关键路径上可能存在一些计算浪费;循环、跳转等控制指令造成的时钟周期浪费。上述种种,使得 CPU 计算模式的性能难以进一步提高。ASIC 执行上述算法的过程如图 3(b)所示。根据功能需求
本文编号:2820741
【学位单位】:解放军信息工程大学
【学位级别】:博士
【学位年份】:2011
【中图分类】:TP338
【部分图文】:
信息工程大学博士学位论文从而能够满足不同 HPC 应用需求,提高计算效率。相对于目前的 X86 处理器而言,FPGA一般运行在较低的时钟频率下,具有较高的内存带宽、突出的并行处理能力(包括指令、数据及线程级的并行)和出色的根据应用环境的硬件定制能力。与在服务器上增加一颗处理器/内核相比,在服务器上增加一颗 FPGA 协处理器,一般性能可以提高 2 至 3 倍,而功耗则降低 40%,如果根据应用情况对算法进行优化,性能甚至可以提高 10 倍以上。
图 2 Surrey 大学可重构 SOC 框图学的 Morphoing System 工程提出的一种粗粒度的可重构结构64 个可重构元胞(Reconfigurable Cell, RC)排成的阵列,每个算单元(ALU-MULT)、两个多路选通器(MUXA、MUXB),可应用于多媒体数据处理和图像处理等[18]。公司和厂商也推出了相应的高性能可重构计算平台相关产品的 SRC-6 硬件平台和 Carte 软件环境[19][20],Cray公司的XD1超构特定应用计算平台 Altix/RASC[22]、StarBridge 公司的 HC-llatech 公司的 Ben 系列 FPGA 卡、DIME 系统和 FUSE 软件[24随着可重构计算技术的发展以及人们对高效能计算的更高追建造下一代超级计算机的重要技术。术概述算发展历史采用一种新型的计算模式,由通用 CPU 负责根据应用特点,
传统的 CPU 计算是一种基于时域的计算模式,计算问题被分解成时域上的运算序列,通过分时复用资源来完成计算;ASIC 则是一种基于空域的计算模式;而可重构计算是一种时/空域上的复合计算模式。图3显示了三种计算模式处理y = A*x*x + B*x + C的过程[38]。图 3 三种计算模式的比较图 3(a)中问题 1 被分解为 5 条指令,依次顺序执行每条指令将输出最终运算结果。从其计算过程可知,虽然 CPU 的硬件结构固定不变,但通过不同的指令流能够实现不同的功能,即 CPU 计算具有很高的通用性。这是 CPU 计算的优点,同时也造成了它的一系列缺点,包括:不能为特定的应用算法优化内部结构;指令集的有限性造成向硬件映射效率的不理想;关键路径上可能存在一些计算浪费;循环、跳转等控制指令造成的时钟周期浪费。上述种种,使得 CPU 计算模式的性能难以进一步提高。ASIC 执行上述算法的过程如图 3(b)所示。根据功能需求
【引证文献】
相关博士学位论文 前1条
1 李春生;可重构多核片上系统软硬件协同优化算法研究[D];中国科学技术大学;2014年
相关硕士学位论文 前1条
1 王冲;基于嵌入式的半虚拟化应用系统的研究与实现[D];西南交通大学;2014年
本文编号:2820741
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2820741.html