memory - 虚拟机实例和我的个人计算机在并行代码上的内存使用/管理差异
问题描述
这个问题可能太宽泛了,所以我知道是否需要关闭它。
我是一个没有经验的云计算用户。我有一个优化代码,我在其中并行化了目标函数的某些部分。它在我的计算机上运行良好,但由于它很重,它很快使我的计算机几乎无法使用。我的电脑是具有 16GB RAM 的 Windows 10。代码永远不会崩溃,只会让我的电脑变得迟钝。我什至打开了 20 多个谷歌浏览器标签。
起初,我创建了一个具有 4 核和 16GB 内存的 Linux VM,设置了所有内容,然后运行了代码。它很快耗尽了内存,程序崩溃了。序列号没有这个问题。
然后我想也许 Linux 管理内存的方式不同(我什至涉足创建交换空间),所以我创建了一个同样具有 4 个内核和 16GB RAM 的 Windows 服务器。它还达到了 RAM 上限,程序崩溃。当我向 VM 添加更多 RAM 时,它能够继续运行。
我的问题是:为什么我的计算机具有相似的规格(并且不太“干净”)处理程序并管理 RAM,而 VM 不这样做?为什么这只发生在并行代码中?我应该在这些 VM 实例中配置什么吗?
虽然我知道这种含糊不清可能没有帮助,但我正在寻找一些一般指导方针或路径,我应该研究这些指导方针或路径,以了解为什么我的个人计算机和云 VM 之间的内存管理存在差异。
解决方案
推荐阅读
- java - 从java中读取文件后将数据值分组
- r - 为数据框编写函数
- python - python嵌套列表错误,ValueError:int()的无效文字,基数为10:'beer'
- python - 在 Python 中添加以签入 if-else 块
- python - 为什么 matplotlib 在 jupyter notebook 中显示的绘图与导出为 pdf 时不同
- caching - 对于缓存,您如何确定要写入高度关联集的哪个块?
- android - Android 如何在外部点击时将文本保留在 EditText 中?
- xml - 如何在 Vue Js 中嵌入我的 XML RSS 文件?
- angular - 如何在单选按钮组的更改事件中更改作为模板驱动表单一部分的选定单选按钮?
- python - 在 Python 中将字符串内核包装到 scikit SVM 分类器中