Python 如何使用Jupyter实验室/笔记本中的交换空间/虚拟RAM?

Python 如何使用Jupyter实验室/笔记本中的交换空间/虚拟RAM?,python,kubernetes,jupyter-notebook,jupyter-lab,jupyterhub,Python,Kubernetes,Jupyter Notebook,Jupyter Lab,Jupyterhub,我正在Jupyter(实验室)中运行进程,它位于一个JupyterHub创建的容器中,该容器在Kubernetes上运行 这些进程占用的内存太多,以至于pod有时会因为OOM而被逐出 在不修改代码/算法等的情况下,当达到预定义的RAM限制时,我如何在一般情况下告诉Jupyter(实验室)使用交换空间/虚拟内存? PS这个问题没有提到交换空间的答案-您不能主动控制交换空间 特别是在Kubernetes中,您不需要为Kubernetes吊舱提供内存限制。 这至少不会因为内存不足而杀死它。然而,我怀疑

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

这些进程占用的内存太多,以至于pod有时会因为OOM而被逐出

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


PS这个问题没有提到交换空间的答案-

您不能主动控制交换空间

特别是在Kubernetes中,您不需要为Kubernetes吊舱提供内存限制。 这至少不会因为内存不足而杀死它。然而,我怀疑它是否会起作用,因为这将使整个节点脱离RAM,然后交换,变得非常缓慢,因此在某个点上被Kubernetes主节点宣布为死亡。这反过来会导致吊舱在其他地方运行并重新启动


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

内存管理是操作系统的一部分。在库伯内特斯,你对它没有影响。