SGE clus上的Java最大堆大小

2024-05-17 18:42:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个用python编写的管道,用Java调用一些进程。管道以两种可能的模式运行:本地模式(在单个节点上)或在SGE集群上。在

当我将选项设置为cluster mode时,日志中的错误消息如下所示

Invalid maximum heap size: -Xmx4g -jar
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

在本地模式下,没有错误也没有问题。在

我的问题是什么会导致这样的错误?在

在本地或集群上运行作业的类如下

^{pr2}$

通常,无法创建Java虚拟机(正如我在某论坛上读到的那样)是由于语法错误造成的,即使调用的命令是正确的并且可以在本地运行,除了上面显示的在集群上运行作业的类之外,它对除Java之外的所有内容都运行

谢谢


Tags: 消息节点管道进程mode选项错误作业
1条回答
网友
1楼 · 发布于 2024-05-17 18:42:00

我在SGE上碰到过这个。您可能将默认的硬内存限制设置为4GB左右,而Java在初始化过程中使用的内存似乎比您在-Xmx4g参数中设置的4GB要多一些。你能看看管理员是否设置了硬内存限制吗?通常,您将使用以下方法设置或覆盖默认限制:

qsub -l h_vmem=16G

尝试通过这个参数提供比所需内存多得多的内存,看看是否能解决这个问题,然后在不崩溃的情况下尽可能降低h_-vmem。在

相关问题 更多 >