Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Memory consumption for proteins needs to be optimised #517

Open
skalarproduktraum opened this issue Feb 3, 2023 · 0 comments
Open

Memory consumption for proteins needs to be optimised #517

skalarproduktraum opened this issue Feb 3, 2023 · 0 comments
Assignees
Labels
cleanup Contains cleanups/refactorings

Comments

@skalarproduktraum
Copy link
Member

At the moment, rendering especially large proteins consumes a lot of memory. This leads to issues like CI failing, for insufficient memory:

graphics.scenery.tests.unit.RibbonDiagramTests > numberSubProteinsTest STANDARD_ERROR
    [Test worker] INFO RibbonDiagramTests - Tests number of subProteins.
    [Test worker] INFO org.biojava.nbio.structure.io.LocalPDBDirectory - Fetching https://models.rcsb.org/3nir.bcif
    [Test worker] INFO org.biojava.nbio.structure.io.LocalPDBDirectory - Writing to C:\Users\RUNNER~1\AppData\Local\Temp\data\structures\divided\bcif\ni\3nir.bcif
    [Test worker] WARN org.biojava.nbio.structure.ChainImpl - Adding residue 22(SER) to chain 1 but a residue with same residue number is already present: 22(PRO). Will add only the aminoacid residue (if any) to the lookup, lookups for that residue number won't work properly.
    [Test worker] WARN org.biojava.nbio.structure.ChainImpl - Adding residue 25(ILE) to chain 1 but a residue with same residue number is already present: 25(LEU). Will add only the aminoacid residue (if any) to the lookup, lookups for that residue number won't work properly.
    [Test worker] INFO org.biojava.nbio.structure.io.cif.CifStructureConsumerImpl - _refine.ls_R_factor_R_free not present, not parsing Rfree value
    [Test worker] WARN org.biojava.nbio.structure.ChainImpl - Adding residue 22(SER) to chain 1 but a residue with same residue number is already present: 22(PRO). Will add only the aminoacid residue (if any) to the lookup, lookups for that residue number won't work properly.
    [Test worker] WARN org.biojava.nbio.structure.ChainImpl - Adding residue 25(ILE) to chain 1 but a residue with same residue number is already present: 25(LEU). Will add only the aminoacid residue (if any) to the lookup, lookups for that residue number won't work properly.
    [Test worker] WARN org.biojava.nbio.structure.ChainImpl - Adding residue 22(SER) to chain 1 but a residue with same residue number is already present: 22(PRO). Will add only the aminoacid residue (if any) to the lookup, lookups for that residue number won't work properly.
    [Test worker] WARN org.biojava.nbio.structure.ChainImpl - Adding residue 25(ILE) to chain 1 but a residue with same residue number is already present: 25(LEU). Will add only the aminoacid residue (if any) to the lookup, lookups for that residue number won't work properly.
    [Test worker] INFO org.biojava.nbio.structure.io.cif.CifStructureConsumerImpl - _refine.ls_R_factor_R_free not present, not parsing Rfree value
    [Test worker] WARN org.biojava.nbio.structure.ChainImpl - Adding residue 22(SER) to chain 1 but a residue with same residue number is already present: 22(PRO). Will add only the aminoacid residue (if any) to the lookup, lookups for that residue number won't work properly.
    [Test worker] WARN org.biojava.nbio.structure.ChainImpl - Adding residue 25(ILE) to chain 1 but a residue with same residue number is already present: 25(LEU). Will add only the aminoacid residue (if any) to the lookup, lookups for that residue number won't work properly.
    [Test worker] INFO org.biojava.nbio.structure.io.LocalPDBDirectory - Fetching https://models.rcsb.org/2w49.bcif
    [Test worker] INFO org.biojava.nbio.structure.io.LocalPDBDirectory - Writing to C:\Users\RUNNER~1\AppData\Local\Temp\data\structures\divided\bcif\w4\2w49.bcif
    [Test worker] INFO org.biojava.nbio.structure.io.cif.CifStructureConsumerImpl - _refine.ls_R_factor_R_free not present, not parsing Rfree value
    [Test worker] INFO org.biojava.nbio.structure.io.cif.CifStructureConsumerImpl - _refine.ls_R_factor_R_work not present, not parsing R-work value
    [Test worker] INFO org.biojava.nbio.structure.io.cif.CifStructureConsumerImpl - _refine.ls_R_factor_R_free not present, not parsing Rfree value
    [Test worker] INFO org.biojava.nbio.structure.io.cif.CifStructureConsumerImpl - _refine.ls_R_factor_R_work not present, not parsing R-work value
OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000696000000, 2432696320, 0) failed; error='The paging file is too small for this operation to complete' (DOS error/errno=1455)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 2432696320 bytes for G1 virtual space
# An error report file with more information is saved as:
# D:\a\scenery\scenery\hs_err_pid3632.log

Unexpected exception thrown.
org.gradle.internal.remote.internal.MessageIOException: Could not write '/127.0.0.1:55067'.
	at org.gradle.internal.remote.internal.inet.SocketConnection.flush(SocketConnection.java:140)

	at org.gradle.internal.remote.internal.hub.MessageHub$ConnectionDispatch.run(MessageHub.java:333)
> Task :test FAILED
	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
	at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.io.IOException: Connection reset by peer
	at java.base/sun.nio.ch.SocketDispatcher.write0(Native Method)
	at java.base/sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:54)
	at java.base/sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:132)
	at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:76)
	at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:53)
	at java.base/sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:532)
	at org.gradle.internal.remote.internal.inet.SocketConnection$SocketOutputStream.writeWithNonBlockingRetry(SocketConnection.java:279)
	at org.gradle.internal.remote.internal.inet.SocketConnection$SocketOutputStream.writeBufferToChannel(SocketConnection.java:267)
	at org.gradle.internal.remote.internal.inet.SocketConnection$SocketOutputStream.flush(SocketConnection.java:261)
	at org.gradle.internal.remote.internal.inet.SocketConnection.flush(SocketConnection.java:138)
	... 6 more

FAILURE: Build failed with an exception.

This is likely a place where some optimisation could happen :)

@skalarproduktraum skalarproduktraum added the cleanup Contains cleanups/refactorings label Feb 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cleanup Contains cleanups/refactorings
Projects
None yet
Development

No branches or pull requests

2 participants