在本文中,我们介绍了一个设计空间探索框架,通过在工业多核平台上重新配置软件来实现和支持增强的资源管理。从一方面来说,框架在设计时运行,以确定一组有希望的操作点,这些操作点代表了目标功耗和性能方面的最佳权衡。在部署系统后使用操作点来支持增强的资源管理策略。这是由一个轻量级的资源管理层完成的,该层过滤并选择每个应用程序的最佳并行性和每个核心的操作频率,以实现外部世界和/或用户施加的QoS约束。
一、引言
多处理器片上系统和芯片多处理器正在成为嵌入式体系结构设计和生产的实际工业标准。这些架构通常采用基于平台的设计方法进行设计,以满足上市时间限制,同时确保一定程度的结果质量。在此背景下,建立了一套参数化的片上系统仿真模型,并对其进行了评估,以便在设计时对系统结构进行精确优化,使其能够满足目标应用要求。然而,由于与部署场景相关的不确定性,传统的设计技术面临着越来越大的困难。事实上,由于体系结构的复杂性越来越高,几乎不可能确定与可用体系结构资源与动态需求(即性能和功耗)匹配的最佳静态配置。因此,对于运行时可以更改的所有参数,例如与应用程序相关联的核心数量及其工作频率,
运行时管理器利用一组预先确定的运行时配置(或操作点),这些配置是在设计时确定的(见图1),通过一个架构模拟器分析和探索架构运行时参数对QoS的影响。操作点包括有关功耗、吞吐量和资源使用的信息/知识,这些信息/知识与硬件/软件基础设施的每个运行时参数配置相关。运行时管理器的总体目标是合理分配运行时参数,以在满足吞吐量QoS的同时最小化功率。
在本文中,我们将核心数量和频率作为应用程序的运行时可配置参数。因此,我们假设:
?可以通过版本控制更改系统上运行的每个应用程序的任务级并行性。
?与每个磁芯相关的频率可以动态更改(或缩放)。
然后,我们介绍了一个设计空间探索框架,用于实现和支持增强的资源管理。
论文的组织结构如下。第二部分介绍了多处理器运行时管理的现状。第三节介绍了目标架构和提议的设计框架,而第四节描述了一个用例研究。最后,第五节总结了这项工作的相关贡献。
人工智能背景
传统的控制功耗和吞吐量的方法是基于减缓或关闭芯片平台上系统的系统资源。事实上,动态电压和频率标度(dvfs)已经使用了十多年,通过使用开环和/或闭环控制策略(参见示例)来最小化动态功耗。通常,传统的控制系统通过在一组离散功率模式中选择电压和频率对来运行,这属于功率/性能目标函数的帕累托边界。
许多核心系统的运行时资源管理试图通过利用并行性的巨大可用性来扩展前面的方法。事实上,许多核心系统提供了一个新的维度(即核心数量),除了频率和电压外,还可以利用它来增强功率和性能控制回路。特别是,单个应用程序的不同并行版本可用于权衡处理器(或资源)的数量与性能和功耗。
在可控参数集合中加入并行性,极大地增加了操作模式的空间。需要创新和高效的运行时资源管理技术来帮助或完全取代基于电源模式的传统控制。该领域的最新研究通过将其建模为多维多选背包问题(MMKP)并通过专门的启发式方法解决该问题。其他作者
已经证明了综合最佳多核架构和协同运行时资源适应机制的可行性。
该方法的目标是在部署时实现所需的QoS,同时最小化功耗和最大化多核的使用。它结合了一个设计时分析和优化阶段,以及一个运行时管理器操作系统层,运行在系统上可用的多个内核之一上。在深入研究该方法的描述之前,我们先介绍了我们的目标体系结构、基准和QoS定义。
ADRES核心是一个高效、灵活的架构模板,它结合了一个非常长的指令字(VLIW)DSP和一个粗粒度阵列。VLIW DSP利用指令级并行性,有效地执行控制流代码。该阵列包含多个功能单元,利用高度的循环级并行性加速数据流循环。
在我们的研究中,与每个ADRES核心相关的频率φ可以独立于其他频率而变化,而强臂运行在206MHz。每个核心的实际频率范围是:Φ=20、60、100、140、180、220MHz。ADRES互连总线由32位宽的全交叉条组成。
工具链和基准。多核系统由编程工具链支持,该工具链能够在指定数量的核上自动映射应用程序的C级描述。在这里,我们将考虑作为一个目标应用程序一个针对4CIF分辨率的MPEG4编码器。此外,我们假设一个或多个MPEG4编码器应用程序可以通过适当的应用程序二进制版本占用一个或多个内核(或系统资源)(见图2)。
性能和功率模型。下一节介绍的实验评估已经用高性能、高水平的多核ADRES模拟机(HLSIM)进行了收集。HLSIM利用了有关执行时间和功耗的反向注释信息,这些信息来自于一个使用Coware平台设计工具构建的周期准确的事务级模拟器。HLSIM报告了运行MPEG4基准测试的目标体系结构的执行时间和功耗。利用台积电90nm参考工艺技术计算了系统的功耗。
赞(0)
最新评论