为什么不通过并行编译看到预期的编译时间减少?

从Quartus®II软件的7.1版本开始,并行编译可以将编译时间减少多达20%。平均设计受益于两个处理器的编译时间减少约10%,四个处理器的编译时间减少约15%。但是,您的设计可能没有类似的编译时间减少的原因有很多;此解决方案中描述了最常见的原因。

如果启用并行编译功能,Quartus II消息将报告编译期间使用的处理器数量,以及使用多个处理器所花费的处理时间百分比。如果未显示此类消息,请检查您的分配以确保已启用并行编译。要设置Quartus II编译可用的处理器数,请在Assignments菜单上选择Settings 。从“ 设置”对话框的“ 类别 下,单击“ 编译过程设置” 。在出现的对话框中,指定并行编译允许最大处理器数 。处理器数量的默认值为1,这将禁用并行编译。

请注意,编译时间不会随处理器使用率线性下降。例如,如果在处理时间的20%中使用2个处理器,则并行编译不一定会将编译时间减少10%。

以下列表描述了降低并行编译性能的可能原因。

  • Quartus II软件使用许多不同的算法来优化您的时序,面积和功耗设计。一些算法可以利用多个处理器而其他算法则不能。引用的平均编译时间减少使用具有难以满足的时序约束的默认设置,但算法的不同组合可能导致编译时间减少。以下列表提供了一些示例:

    • 如果将Fitter工作量设置为“ 自动调整”并且您的设计具有易于满足的时序和可布线性要求,则Fitter可能会跳过或缩短并行编译期间执行的算法。在这种情况下,并行编译可能不会导致预期的时间缩短,但实际上通过使用“ 自动调整”设置可以节省更多编译时间。
    • 物理综合优化通常会增加Fitter编译时间。在Quartus II软件的7.1版中,物理综合没有利用并行编译。尽管编译时间的绝对减少没有改变,但这种效果会降低并行编译的相对好处。例如,如果物理综合优化将编译时间增加2倍,则由于并行编译而导致的编译时间的相对减少将减少约一半,从平均10%减少到平均5%。
    • 较高的Placement Effort Multiplier实际上可以增加并行编译的相对好处。因为如果您的设计未能通过首次布线尝试,则会自动提高放置工作量,因此难以适应的设计可能会比编辑的百分比节省编译时间。
  • 不同的计算机有不同的并行处理能力通常,较新的计算机比旧计算机表现更好。例如,双核处理器通常比双处理器系统表现更好,因为它们是专门为并行处理而设计的。由于处理器之间的通信带宽非常低,一些非常旧的多处理器计算机可能会显示并行编译性能下降。
  • 一些不太常见的配置可能会降低并行编译性能。具体而言,具有多个多核处理器的系统(其中一些核共享高速缓存级别)可能需要额外的设置以实现最佳的并行编译性能。有关详细信息,请参阅下面的相关解决方案。
  • 还有其他几个原因可以降低并行编译性能,如果其中一个原因适用于您的设计,Quartus II软件将生成一条消息。有关更多详细信息,请参阅与消息关联的帮助条目。

未来版本的Quartus II软件可以为现有系统提供更低的编译时间,并支持具有更多处理器的计算机。

有关并行编译功能和减少编译时间的更多信息,请参考Quartus II手册第2卷中的区域和时序优化 (PDF)章节中的编译时优化技术部分。

编辑 重设标签(回车键确认) 标为违禁 关闭 合并 删除

提问于 2018-08-06 16:48:54 +0800

这个帖子被标记为一个社区wiki

这个帖子是一个wiki(维基). 任何一个积分 >500的人都可以完善它