我想找到一个加权DAG的关键路径(权重最大的路径),但是具有指定数量的处理器。我知道如何用无限的处理器解决它。
How to compute the critical path of a directional acyclic graph?
Calculating the critical path of a graph
显然有很多不同的方法,但是通常跟踪最大成本或最小启动时间,然后通过增加父节点的成本等来迭代地更新成本,这是一种流行的方法。
如果我只有p个处理器,该如何更改该算法?我的方法是跟踪“就绪”节点和“当前运行”节点,然后一次弹出最大p个节点。
但是我不确定如何有效地执行此操作。我只想找到关键路径的权重,而不是路径本身!
当我抽出处理器并手动安排它们时,我在纸上理解,但是由于我不知道我有多少个处理器(只是“ p”个处理器),所以我不确定如何在处理器中模仿码。