【记录】踩坑记录,Flask启动了两次
现象:最近在使用Flask编写模型服务的时候,出现了模型启动时候显存不足的状况,但是目标机器的显存是充裕的。模型预测时候,显存限制为0.5;
很显然单个模型是可以跑起来的,报OOM错误是因为Flask程序启动了两次,排查后得出结论:
-
Flask的debug模式下,会启动一个子线程,当代码变动时候它会自动重启;相当于启动了两个模型,单个模型限制0.5,tensorflow下会默认占满,所以两个模型起不来;
-
最终部署服务的时候,在调用app.run()的时候,使用
debug=False或者,添加use_reloader=False, 可避免启动两次;当然,添加之后,再修改代码也不会更新了;
🍨
本文记录了在使用Flask开发模型服务时遇到的内存问题,发现debug模式下启动的子线程导致模型运行两次,解决办法是设置debug=False并禁用自动重启。
220

被折叠的 条评论
为什么被折叠?



