MCRcortex / MCRcortex/voxy

changing dimensions is insanely slow

Open
#162 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
1.2k
Forks
1.1k
PR merge metrics
No merged PRs in 30d

Description

when going through a nether or end portal, or just joining a server, or even just reloading the texture packs with f3+t, it freezes for like 20-30 seconds.
these are the logs while frozen:

[16:04:33] [Render thread/INFO]: [me.cx.vy.ct.ce.VoxyRenderSystem]: Flushing download stream
[16:04:33] [Render thread/INFO]: [me.cx.vy.ct.ce.VoxyRenderSystem]: Shutting down rendering
[16:04:33] [Render thread/INFO]: [me.cx.vy.ct.ce.rg.sn.gy.BasicSectionGeometryData]: Attempting to wait for gpu memory to release
[16:04:33] [Render thread/WARN]: [me.cx.vy.ct.ce.rg.sn.gy.BasicSectionGeometryData]: Failed to wait for gpu memory to be freed, this could indicate an issue with the driver
[16:04:33] [Render thread/INFO]: [me.cx.vy.ct.ce.VoxyRenderSystem]: Shutting down render pipeline
[16:04:33] [Render thread/INFO]: [me.cx.vy.ct.ce.VoxyRenderSystem]: Flushing download stream
[16:04:33] [Render thread/INFO]: [me.cx.vy.ct.ce.VoxyRenderSystem]: Render shutdown completed
[16:04:33] [Render thread/INFO]: [me.cx.vy.ct.ce.rg.sn.gy.BasicSectionGeometryData]: Creating and zeroing 3395MB geometry buffer driver states 4390MB of free memory
[16:04:33] [Render thread/INFO]: [me.cx.vy.ct.ce.rg.sn.gy.BasicSectionGeometryData]: if your game crashes/exits here without any other log message, try manually decreasing the geometry capacity
[16:05:03] [Render thread/INFO]: [me.cx.vy.ct.ce.rg.sn.gy.BasicSectionGeometryData]: Successfully allocated and zeroed the geometry buffer in 29874ms
[16:05:03] [Render thread/INFO]: [me.cx.vy.ct.ce.VoxyRenderSystem]: Voxy render system created with 3560169472 geometry capacity, using pipeline 'NormalRenderPipeline' with renderer 'MDICSectionRenderer'
[16:05:03] [Render thread/INFO]: Stopping worker threads
[16:05:03] [Render thread/INFO]: Started 10 worker threads
[16:05:03] [Render thread/INFO]: [ETF]: reloading ETF data.
[16:05:03] [Render thread/INFO]: [ETF]: emissive suffixes loaded: {_e}
[16:05:09] [Async Node Manager/INFO]: [me.cx.vy.ct.ce.rg.hl.AsyncNodeManager$ComputeMemoryCopy]: Resizing scratch data buffer to: 2097152
[16:05:09] [Async Node Manager/INFO]: [me.cx.vy.ct.ce.rg.hl.AsyncNodeManager$ComputeMemoryCopy]: Resizing scratch data buffer to: 4194304
[16:05:10] [Async Node Manager/INFO]: [me.cx.vy.ct.ce.rg.hl.AsyncNodeManager$SyncResults]: Expanding scatter update buffer to 24720
[16:05:10] [Async Node Manager/INFO]: [me.cx.vy.ct.ce.rg.hl.AsyncNodeManager$ComputeMemoryCopy]: Resizing scratch data buffer to: 8388608

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the freeze during a dimension change, server join, or F3+T reload and start with the BasicSectionGeometryData allocation messages in the logs. Trace the shutdown and recreation flow through VoxyRenderSystem and the buffer-related AsyncNodeManager messages. Done means these transitions no longer incur a 20–30 second render-thread stall.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
computer-graphics, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.