【问题标题】:How to increase heap space for a Python library based on Java?如何为基于 Java 的 Python 库增加堆空间?
【发布时间】:2020-11-12 04:25:48
【问题描述】:

我是一名 Python 用户,我正在努力使用基于 Java 的库(lolopy,https://pypi.org/project/lolopy/)。特别是,我应该按照作者在文档中所说的增加堆空间:

"设置运行机器学习计算的 JVM 的最大内存占用可以通过设置 LOLOPY_JVM_MEMORY 环境变量来实现。LOLOPY_JVM_MEMORY 的值用于设置最大堆大小JVM(详见Oracle的文档)。例如,“4g”允许lolo使用4GB内存”。

我从来没有使用过 Java,我不知道该怎么做。提前致谢。

【问题讨论】:

  • 不需要直接设置堆空间。再次阅读说明。您需要更改 LOLOPY_JVM_MEMORY 环境变量,它将用于为您设置最大堆。所以真正的问题是你是否知道如何在你的操作系统上设置环境变量。您的问题根本不是 Java 特有的。

标签: java python jvm heap-memory py4j


【解决方案1】:

只需添加一个新的环境变量:

名称:LOLOPY_JVM_MEMORY

价值:4g(或您需要的任何其他价值)

如果您不知道,这里是简单的手册。只需将 PATH 更改为 LOLOPY_JVM_MEMORY:https://www.java.com/en/download/help/path.xml

但它与 Java 无关。它只是一个简单的环境变量

[编辑]

好的,这个教程好多了:https://www.poftut.com/how-to-set-environment-variables-for-linux-windows-bsd-and-macosx/

【讨论】:

  • 我已按照您的建议进行操作,创建了一个变量 LOLOPY_JVM_MEMORY,其值为 2g,但运行 Python 代码时出现以下错误:invalid literal for int() with base 10: b'Error occurred during initialization of VM\n'。 (在我的电脑上,我有 16GB 的 RAM)。
  • 您确定已安装 Java 并将其添加到 PATH 中吗?你是java JAVA_HOME 创建的吗?
  • 运行 Python 代码 from lolopy.learners import RandomForestRegressor 和 model = RandomForestRegressor() 时出现错误。我的变量是 LOLOPY_JVM_MEMORY=2g,Path=C:\Program Files (x86)\Common Files\Oracle\Java\javapath 和 JAVA_HOME=C:\Program File (x86)\Java\jre1.8.0_251。我也尝试过使用 JRE_HOME=C:\Program File (x86)\Java\jre1.8.0_251 和 JRE_HOME=C:\Progra~2\Java\jre1.8.0_251,但它们给出了相同的错误。
  • 我认为你必须安装 JDK 而不是 JRE:开发 Lolopy 需要 Python >= 3.6,Java JDK >= 1.8,并且在开发 lolopy 时需要在系统上安装 Maven。
  • 我认为您安装了 32 位 Java。如果它位于 c:\Program Files (x86) 中,则它是 32 位版本。并且它不能分配超过大约 1.5gb。如果是这个问题,请安装 64 位 Java
猜你喜欢
  • 2019-01-23
  • 2014-07-13
  • 2011-01-14
  • 2011-02-12
  • 2011-03-25
  • 1970-01-01
  • 1970-01-01
  • 2016-11-26
  • 1970-01-01
相关资源
最近更新 更多