每次构建完成后,我都会看到类似的内容:
经过时间:1034.748s,关键路径:257.54s
想知道经过时间和关键路径之间的区别是什么?什么可能导致时差?
答案 0 :(得分:9)
“已用时间”显示构建的时间,因为Bazel开始运行第一个构建操作,直到最后一个操作完成。
“关键路径”显示构建最长操作链所花费的时间,其中每个后续操作都取决于前一个操作的输出,因此它们必须按顺序运行。关键路径是此构建的清理构建时间的下限;即使CPU的内核数量多于Bazel并行运行的内核数量,构建仍然无法更快完成。
时差是由Bazel执行其他操作引起的。大概有更多的行动要比关键路径上的行动更多。