Forum

Java Heap space iss...
 
Notifications
Retirer tout

Java Heap space issue


(@martinm)
New Member
Inscription: Il y a 12 mois
Posts: 3
Début du sujet  

Greetings.

After updating to the latest version of ProlineStudio 2.1.2 I tried comparing larger number of datasets (about 60) compared to our previous work, which consisted of max 10 of them. However, when importing such a large sample size I got an error regarding Java heap space (picture) "Error while quantifying the dataset because Java heap space".

Currently, the heap size is set to 4GB, I tried increasing it using "java -Xmx8g" command in the appropriate directory. However, this didn't work as it only spit out the Java help options.

Any chance you could help me with this issue please? Thank you for any advice.

Best regards,

Martin


Citation
(@vero)
Membre Admin
Inscription: Il y a 4 ans
Posts: 45
 

Hello,

Which distribution of Proline do you use ? (Proline Zero or Proline server) .

When you say you increase Java memory in the appropriate directory, which file did you modify ? 

The option is correct but maybe you didn't modify the concerned file. 

 

Sorry for the delay

Best Regards

Veronique


RépondreCitation
(@martinm)
New Member
Inscription: Il y a 12 mois
Posts: 3
Début du sujet  

Hello again!

Posté par: @vero

Which distribution of Proline do you use ? (Proline Zero or Proline server) .

I'm using Proline Zero.

 

Posté par: @vero

When you say you increase Java memory in the appropriate directory, which file did you modify ? 

We tried multiple files, mostly focusing on "javacp.exe" in the "...\Proline-Zero-2.1.2\ProlineStudio-2.1.2\jre\bin" directory using the console command I mentioned earlier. Also, we tried increasing the heap space similarly to your instructions in the installation manual for server version, e.g, adding "-Xmx8G -XX:+UseG1GC" into monitor.bat file but to no avail. The only thing that partially worked was increasing the heap space for "javaw" by adding the option in one of your configuration files. But this too seems to be ignored in the end as it allocates ~3.54Gb and not a bit more when Proline starts processing data.

All in all, what would your recommended approach please? We really feel like we've tried everything we could as of right now.

Thank you.

Best regards,
Martin

 


RépondreCitation
(@vero)
Membre Admin
Inscription: Il y a 4 ans
Posts: 45
 

Hello,

So, for Proline Zero, the best way to increase memory is to open <ProlineZeroPath>\proline_launcher.config.

You have to modify the property "total_max_memory" and set it up to 12G / 16G ...(? this will depends on your computer configuration.)

There is also "studio_max_memory" : by defaukt it is set to 1G, you can increase it to 2G but this doen't impact the quantitation.

Furthermore, if you have large amount of  data to process, you may set proline server on a server or at least have a computer with enough memory... not really easy to say how much. It depends on the amount od data and the process which are run.

 

To understand well the memory usage in Zero:

* You fix a total amount of memory which will then be shared between

** the JMS Sever (1Go) : used for modules communication;

** the Sequence Repository Module (1 Go): if enabled !  used for Protein sequence retrieving 

** the datastore (postgresql) : 1Go . May be modified depending on the total amount of memory specified

** Proline Studio which correspond to the IHM : 1Go by default

** Proline Server: remaining memory. This module is the one which execute most of the process. 

 

When you run Proline Zero, it will start the different modules with appropriated amount of memory. In further version, a configuration window will help you to configure it (among other things).

If you still need some help or explanation do not hesitate to ask.

 

Best regards

Veronique


RépondreCitation
(@martinm)
New Member
Inscription: Il y a 12 mois
Posts: 3
Début du sujet  

Thank you very very much! It actually helped (I could see a substantial increase in memory allocation) but another error occurred while starting the program:

Error while quantifying the dataset because key not found: 2052
{"code""Error while quantifying the dataset because key not found: 2052"}
at com.thetransactioncompany.jsonrpc2.JSONRPC2Parser.parseJSONRPC2Response(JSONRPC2Parser.java:540)
at com.thetransactioncompany.jsonrpc2.JSONRPC2Parser.parseJSONRPC2Message(JSONRPC2Parser.java:287)
at com.thetransactioncompany.jsonrpc2.JSONRPC2Message.parse(JSONRPC2Message.java:137)
at com.thetransactioncompany.jsonrpc2.JSONRPC2Message.parse(JSONRPC2Message.java:99)
at fr.proline.studio.dpm.task.jms.SpectralCountTask.taskDone(SpectralCountTask.java:169)
at fr.proline.studio.dpm.task.jms.AbstractJMSTask.onMessage(AbstractJMSTask.java:204)
at org.hornetq.jms.client.JMSMessageListenerWrapper.onMessage(JMSMessageListenerWrapper.java:103)
at org.hornetq.core.client.impl.ClientConsumerImpl.callOnMessage(ClientConsumerImpl.java:1116)
at org.hornetq.core.client.impl.ClientConsumerImpl.access$500(ClientConsumerImpl.java:56)
at org.hornetq.core.client.impl.ClientConsumerImpl$Runner.run(ClientConsumerImpl.java:1251)
at org.hornetq.utils.OrderedExecutorFactory$OrderedExecutor$1.run(OrderedExecutorFactory.java:104)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

Do you have any idea as to what this might be? I can't decode what the dataset key corresponds to.

Thank you again for your previous advice.

 

Best regards,
Martin


RépondreCitation
(@vero)
Membre Admin
Inscription: Il y a 4 ans
Posts: 45
 

Great news for the memory.

For the remainding error could you provide me the log file from the server side ? 

You will find it: <ProlineZeroPath>\Proline-Cortex-2.1.2\logs

The current full log is proline_cortex_debug.txt

Maybe it will be easier to send it by mail  :veronique.dupierris at cea.fr

Best Regards

Veronique


RépondreCitation
Share: