docker - docker 中 jupyter 的性能比原生模式慢 15 倍。我从哪里开始发现问题?
问题描述
我在最近的(20.04)ubuntu 版本上安装了 Jupyter,以处理神经网络。
我在 numpy 之上使用家庭滚动的 python 来完成艰苦的工作。
由于我在使用交互式图表等附加组件时遇到了一些问题,因此我决定尝试使用 docker 容器。
但是当我直接在机器上运行测试用例笔记本时,需要 1 分 1 秒(69 秒)。
将 ipynb 文件导出和导入到 docker 容器并运行相同的东西,需要 15 分 7 秒。
我在同一台 PC 上运行 Firefox 中的直接安装版本,即我从笔记本电脑远程访问的 docker 版本。
该代码是多线程的(11 个线程),并且在两种情况下运行时基本上都以 100% 的速度运行所有内核(条 1)。
我几个月前建造的 PC 有 nvme 磁盘、24Gb RAM(在任何一种情况下都没有交换)和 ryzen 5 3600X CPU。
这是一个失败的原因吗?- 我知道 docker 应该是一个相当低的开销......
我可以从哪里开始尝试找出损坏的地方?
码头集装箱正在使用:
蟒蛇 3.6
Numpy 1.13.3
Jupyter 版本 4.4.0
直接版本使用的是:Python 3.8.5
Numpy 1.17.4
jupyter核心:4.6.3
jupyter笔记本:6.0.3
qtconsole:未安装
ipython:7.13.0
ipykernel:5.2.0
jupyter 客户端:6.1.2
jupyter 实验室:3.0.9
NB转换:5.6.1
ipywidgets:7.6.3
NB格式:5.0.4
特质:4.3.3
解决方案
推荐阅读
- javascript - 基于另一个可观察对象的可观察地图属性
- javascript - 为什么我的应用在移动设备上的行为与在桌面设备上的行为不同?
- django - 对于 UUID,Django is-instance 无法正常工作
- java - Android EACCES(权限被拒绝)仅在某些设备上
- drake - 使用 Drake 和 Mosek 的 SOS 多项式产生错误代码 1501
- python - 如何在python中使用re函数
- angular - 如何将 rxjs 运算符与 ngrx-form 一起使用?
- python - Keras:将多个输出连接成图像分割中的最终输出
- javascript - 路由到具有不同参数的同一页面时,NextJS 初始状态未更新
- c# - 如何获得异步调用的结果?