分布式MIP日志


分布式MIP日志

分布式MIP的日志记录与标准MIP日志记录非常相似。主要的区别在于进度部分。标准MIP日志的头看起来像这样:

节点|当前节点| Objective Bounds | Work Expl Unexpl | Obj Depth IntInf |在职BestBd Gap | It/Node Time
相反,分布式MIP报头的倒数第二个字段有不同的标签:
节点|当前节点| Objective Bounds | Work Expl Unexpl | Obj Depth IntInf |在职BestBd Gap | ParUtil Time
与显示每个节点的迭代不同,分布式日志中的这个字段显示并行利用率。具体来说,它显示了工人主动处理MIP节点所花费的前一个时间段(从前一个进度日志行开始的时间)的百分比。

下面是一个分布式MIP进度日志示例:

当前节点节点| |客观界限|工作Expl Unexpl | Obj深度IntInf | |现任BestBd差距ParUtil时间H 0 157344.61033 - 40707.729144 - 0 H 0 - 0 - 0 H 28468.534497 - 18150.083886 - 0 H 0 - 14372.871258 - 0 H 0 - 0 H 0 13725.475382 - 10543.7611 - 0 0 0 0 19 13725.4754 10543.7611 23.2% 99% 0 * 266 12988.468031 10543.7611 18.8%0s H 1503 12464.099984 10630.6187 14.7% 0s * 2350 12367.608657 10632.7061 14.0% 1s * 3360 12234.641804 10641.4586 13.0% 1s H 3870 11801.185729 10641.4586 9.83% 1s Ramp-up phase complete - continuing with instance 2 (best bd 10661) 16928 2731 10660.9626 0 12 11801.1857 10660.9635 9.66% 99% 2s 135654 57117 11226.5449 19 12 11801.1857 11042.3036 6.43% 98% 5s 388736 135228 11693.0268 23 12 11801.1857 11182.6300 5.24% 96% 10s 705289 196412 cutoff 11801.1857 11248.8963 4.68% 98% 15s 1065224 232839 11604.6587 28 10 11801.1857 11330.2111 3.99% 98% 20s 1412054 238202 11453.2202 31 12 11801.1857 11389.7119 3.49% 99% 25s 1782362 209060 cutoff 11801.1857 11437.2670 3.08% 97% 30s 2097018 158137 11773.6235 20 11 11801.1857 11476.1690 2.75% 92% 35s 2468495 11516 cutoff 11801.1857 11699.9393 0.86% 78% 40s 2481830 0 cutoff 11801.1857 11801.1857 0.00% 54% 40s

在进度部分您可能会发现,节点数可能不会单调地增加。分布式MIP试图创建一个单一的、统一的节点数视图,但是使用多台机器独立地处理节点(可能以不同的速率),一些不一致是不可避免的。

另一个不同之处是,这条线表示分布式过渡阶段已经完成。此时,分布式策略从并发方法过渡到分布式方法。日志线指示哪个工人是赢家在并行方法中。分布式的MIP继续通过将部分探索的MIP搜索树从这个工作者划分到所有工作者。

分布式日志的另一个区别是摘要部分。分布式MIP日志包括运行时是如何使用的细分:

Runtime breakdown: Active: 37.85s (93%) Sync: 2.43s (6%) Comm: 0.34s (1%)
这是在进度日志行中显示的利用率数据的聚合视图。在本例中,工作人员在运行时中有93%的时间在MIP节点上积极工作,6%的时间等待与其他工作人员同步,1%的时间在机器之间通信数据。