Как понять время выхода Базеля?

Каждый раз после завершения сборки я вижу что-то вроде:

Истекшее время: 1034,748 с, критический путь: 257,54 с

Хотите знать, в чем разница между истекшим временем и критическим путем? Что может быть причиной разницы во времени?

Переслано с: https://github.com/bazelbuild/bazel/issues/3164


person Yun Peng    schedule 12.06.2017    source источник


Ответы (1)


«Прошедшее время» показывает время построения стены, так как Bazel начал выполнять первое действие сборки до завершения последнего действия.

«Критический путь» показывает время, затраченное стеной на создание самой длинной цепочки действий, где каждое последующее действие зависит от результатов предыдущего, поэтому они должны выполняться последовательно. Критический путь — это нижний предел времени чистой сборки этой сборки; даже если бы у ЦП было больше ядер, чем количество действий, которые Bazel когда-либо выполнял параллельно, сборка все равно не могла бы завершиться быстрее.

Разница во времени вызвана тем, что Bazel выполняет и другие действия. Предположительно, нужно было выполнить больше действий, чем только те, которые находились на критическом пути.

person László    schedule 12.06.2017