【问题标题】:How can I make use of swap space/virtual RAM in Jupyter lab/notebook?如何在 Jupyter 实验室/笔记本中使用交换空间/虚拟 RAM?
【发布时间】:2020-12-26 13:16:08
【问题描述】:

我正在 Jupyter(实验室)中的 JupyterHub 创建的容器中运行进程,该容器在 Kubernetes 上运行。

这些进程过于占用 RAM,以至于 Pod 有时会因 OOM 而被驱逐。

如果不修改我的代码/算法等,在一般情况下,当达到预定义的 RAM 限制时,我如何告诉 Jupyter(Lab) 使用交换空间/虚拟内存?

PS 这个问题没有答案提到交换空间 - Jupyter Lab freezes the computer when out of RAM - how to prevent it?

【问题讨论】:

  • 内存管理是操作系统的一部分。在 Kubernetes 中,你对它没有任何影响。

标签: python kubernetes jupyter-notebook jupyter-lab jupyterhub


【解决方案1】:

你不能主动控制交换空间。

特别是在 Kubernetes 中,您只是不为 Kubernetes pod 提供内存限制。 由于OOM(内存不足),这至少不会杀死它。但是,我怀疑它会起作用,因为这会使整个节点耗尽 RAM,然后交换并变得非常慢,因此在某些时候被 Kubernetes 主节点宣布死亡。这反过来又会导致 Pod 在其他地方运行并重新开始。

对您而言,一种更具可扩展性的方法可能是使用核外算法,该算法可以直接在磁盘上运行(因此只需将 PV/PVC 附加到您的 pod),但这取决于您使用的算法或流程使用。

【讨论】:

  • 虽然我很难过,但我必须接受!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-05
  • 2021-03-04
  • 1970-01-01
  • 1970-01-01
  • 2021-12-03
  • 1970-01-01
相关资源
最近更新 更多