早期最坏情况执行时间估计与纪念站系统实现
早期最坏情况执行时间(WCET)估计
训练与测试阶段
在特定的硬件(HW)和编译器配置下,训练阶段仅执行一次,其目的是了解处理器的时序行为。训练程序经过精心设计和挑选,可在目标硬件或模拟器上编译和执行。在此过程中,我们会记录程序在虚拟硬件上执行所需的周期数。同时,这些训练程序会被转换为中间格式 ALF,以提供虚拟指令。借助 SWEET 工具,我们可以记录虚拟指令的指令计数,该工具的主要功能是进行流分析,以找出程序中的不可行路径和循环边界等流事实。将这些数据输入模型,从而确定最佳模型。
测试阶段主要是对基准程序进行 WCET 估计。首先选择基准程序,接着使用 ALF 将其转换为虚拟指令,最后利用预测模型为每个程序计算 WCET 估计值。
实验设置
实验采用 Raspberry Pi 4 平台,其硬件基于 Broadcom BCM2711 SoC,配备 1.5 GHz 64 位四核 ARM Cortex - A72 处理器,这是一款 2 宽超标量处理器,具有私有 L1 缓存和 1 MB 共享 L2 缓存。该平台运行 Raspbian Lite 操作系统(Linux 内核版本 4.19),这是一个轻量级操作系统,无用户界面,可最大程度减少操作系统活动对时序的影响。为避免操作系统带来的时序噪声,代码以 Linux 内核模块的形式运行,并在特定核心(核心 3)上执行,该核心禁止用户任务运行。
实验使用 TACLeBench 基准套件进行评估,但不支持包含浮点值、递归和复杂调用的基准测试,因为内核模式执行不支持这些特性。
共使用 242 个程序来训练预测模型,确保
超级会员免费看
订阅专栏 解锁全文
3854

被折叠的 条评论
为什么被折叠?



