我在docker中运行内存密集型python脚本(pandas,numpy,机器学习),性能很差。
在我的主机中,脚本使用超过10GB的RAM。 dockerized python脚本仅使用3Gb(com.docker.hyperkit进程)。我已经将我的docker内存首选项更改为10gb(在Mac OS Docker GUI中)并运行具有显式内存限制的容器:
docker run -m 10g ...
为什么容器不使用10gb作为主机应用程序?
答案 0 :(得分:1)
除了memmory之外,计算机程序还使用其他资源。有CPU,I / O设备和信息。 我猜你所看到的这种行为是其他资源被淘汰的结果。例如,您的I / O设备可能会在memmory填满之前造成瓶颈。这只是猜测,因为我没有其他信息。