Model Analyzer 中的检查点#
Model Analyzer 在分析时将收集的测量结果写入检查点文件。这些文件位于指定的检查点目录中(有关默认位置,请参阅Config Defaults 部分)。检查点文件用于创建数据表、摘要和详细报告。
何时完成检查点操作?#
Model Analyzer 在多种情况下保存检查点
对于给定的模型,当所有性能分析器运行完成后,Model Analyzer 将保存一个检查点。
用户可以使用
CTRL-C (SIGINT)
发起提前退出分析。这将等待当前的性能分析器运行完成,然后保存检查点并退出。如果用户需要立即退出,他们可以发送 3 次
SIGINT
。在这种情况下,Model Analyzer 将保存一个检查点并立即退出。
检查点命名方案#
当分析运行完成时
$ model-analyzer profile -m example_model_repo --profile-models example_model_1,example_model_2
2021-05-13 19:57:05.87 INFO[entrypoint.py:98] Starting a local Triton Server...
2021-05-13 19:57:05.92 INFO[server_local.py:64] Triton Server started.
2021-05-13 19:57:09.234 INFO[server_local.py:81] Triton Server stopped.
2021-05-13 19:57:09.235 INFO[analyzer_state_manager.py:118] No checkpoint file found, starting a fresh run.
.
.
.
2021-05-13 19:58:01.625 INFO[analyzer.py:110] Finished profiling. Obtained measurements for models: ['example_model_1', 'example_model_2']
在检查点目录中,将有 2 个检查点。
$ ls -l checkpoints
-rw-r--r-- 1 root root 11356 May 11 20:00 0.ckpt
-rw-r--r-- 1 root root 11356 May 13 19:58 1.ckpt
检查点使用连续的非负整数命名。在启动时,Model Analyzer 识别最新的检查点(最高的整数)并加载它。如果检查点中的数据有任何更改,则在再次保存之前,检查点索引会递增,从而创建一个新的最新检查点。
注意:Model Analyzer 不会清理旧的检查点。它仅保证具有最高整数索引的检查点是具有最新测量结果的检查点。如果您想开始全新的运行,则应在连续运行 model-analyzer profile
命令之间删除检查点目录。