Oculus

Oculus

81M Downloads

OpenGL memory-related crash

HyperCodec opened this issue · 5 comments

commented

Minecraft Version

1.20.1

Oculus Version

1.8.0

Rubidium / Embeddium Version

embeddium-0.3.31

Operating System

Windows 10

What is your GPU?

Nvidia GeForce GT 1030 (2GB VRAM)

Java Version

Java 17 (btw you should probably update the issue template)

Reproduction Steps

I am using a modpack with a bunch of mods, and if I'm ever playing with shaders for long enough (or enable shaders during a lag spike), the game just freezes and then crashes, always with The NVIDIA OpenGL driver has encountered an out of memory error. This application might behave inconsistently and fail.

It seems to be related to some sort of memory leak, as even with shaders, on a new launch of the game, it only takes around 1.5 GB of VRAM, and slowly rises as I play. It sometimes happens even without shaders enabled, and just the Oculus/Embeddium mods if I'm playing for multiple hours without closing the app. It does properly free a lot of VRAM when disabling/reloading shaders though.

This issue can also happen on iris.

Crash Report file and latest.log

[19Feb2025 20:26:35.820] [Render thread/INFO] [Oculus/]: Destroying pipeline NamespacedId{namespace='minecraft', name='overworld'}
[19Feb2025 20:26:36.413] [Render thread/WARN] [Oculus/]: Found flag CUSTOM_IMAGES
[19Feb2025 20:26:36.434] [Render thread/WARN] [Oculus/]: Tried to get boolean value for unknown option: 1, defaulting to true!
[19Feb2025 20:26:36.434] [Render thread/WARN] [Oculus/]: Tried to get boolean value for unknown option: FXAA, defaulting to true!
[19Feb2025 20:26:36.435] [Render thread/WARN] [Oculus/]: Tried to get boolean value for unknown option: 1, defaulting to true!
[19Feb2025 20:26:36.435] [Render thread/WARN] [Oculus/]: Tried to get boolean value for unknown option: FXAA, defaulting to true!
[19Feb2025 20:26:36.435] [Render thread/WARN] [Oculus/]: Tried to get boolean value for unknown option: FXAA, defaulting to true!
[19Feb2025 20:26:36.435] [Render thread/WARN] [Oculus/]: Tried to get boolean value for unknown option: 1, defaulting to true!
[19Feb2025 20:26:36.449] [Render thread/INFO] [Oculus/]: Profile: POTATO (+0 options changed by user)
[19Feb2025 20:26:38.133] [Render thread/INFO] [Oculus/]: Using shaderpack: ComplementaryUnbound_r5.4.zip
[19Feb2025 20:26:38.133] [Render thread/INFO] [Oculus/]: Creating pipeline for dimension NamespacedId{namespace='minecraft', name='overworld'}
[19Feb2025 20:26:38.290] [Render thread/INFO] [Oculus/]: Starting custom uniform resolving
[19Feb2025 20:26:38.391] [Render thread/WARN] [Oculus/]: Failed to resolve uniform inPaleGarden, reason: Unknown variable: BIOME_PALE_GARDEN ( = FunctionCall{smooth {[Number{54}, FunctionCall{if {[FunctionCall{in {[Id{biome}, Id{BIOME_PALE_GARDEN}]} }, Number{1}, Number{0}]} }, Number{15}, Number{15}]} })
java.lang.RuntimeException: Unknown variable: BIOME_PALE_GARDEN
	at kroppeb.stareval.resolver.ExpressionResolver.resolveExpressionInternal(ExpressionResolver.java:220) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at kroppeb.stareval.resolver.ExpressionResolver.resolveCallExpressionInternal(ExpressionResolver.java:81) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at kroppeb.stareval.resolver.ExpressionResolver.resolveCallExpression(ExpressionResolver.java:140) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at kroppeb.stareval.resolver.ExpressionResolver.resolveExpressionInternal(ExpressionResolver.java:194) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at kroppeb.stareval.resolver.ExpressionResolver.resolveCallExpressionInternal(ExpressionResolver.java:81) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at kroppeb.stareval.resolver.ExpressionResolver.resolveCallExpression(ExpressionResolver.java:140) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at kroppeb.stareval.resolver.ExpressionResolver.resolveCallExpression(ExpressionResolver.java:127) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at kroppeb.stareval.resolver.ExpressionResolver.resolveExpressionInternal(ExpressionResolver.java:194) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at kroppeb.stareval.resolver.ExpressionResolver.resolveCallExpressionInternal(ExpressionResolver.java:81) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at kroppeb.stareval.resolver.ExpressionResolver.resolveCallExpression(ExpressionResolver.java:140) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at kroppeb.stareval.resolver.ExpressionResolver.resolveExpressionInternal(ExpressionResolver.java:194) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at kroppeb.stareval.resolver.ExpressionResolver.resolveExpression(ExpressionResolver.java:50) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at net.irisshaders.iris.uniforms.custom.CustomUniforms.<init>(CustomUniforms.java:62) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at net.irisshaders.iris.uniforms.custom.CustomUniforms$Builder.build(CustomUniforms.java:334) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at net.irisshaders.iris.uniforms.custom.CustomUniforms$Builder.build(CustomUniforms.java:345) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at net.irisshaders.iris.pipeline.IrisRenderingPipeline.<init>(IrisRenderingPipeline.java:263) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at net.irisshaders.iris.Iris.createPipeline(Iris.java:623) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at net.irisshaders.iris.pipeline.PipelineManager.preparePipeline(PipelineManager.java:33) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at net.irisshaders.iris.Iris.reload(Iris.java:574) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at net.irisshaders.iris.Iris.toggleShaders(Iris.java:229) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at net.irisshaders.iris.Iris.handleKeybinds(Iris.java:202) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at net.irisshaders.iris.Iris.onKeyInput(Iris.java:140) ~[oculus-mc1.20.1-1.8.0.jar%23398!/:?]
	at net.minecraftforge.eventbus.EventBus.doCastFilter(EventBus.java:260) ~[eventbus-6.0.5.jar%23142!/:?]
	at net.minecraftforge.eventbus.EventBus.lambda$addListener$11(EventBus.java:252) ~[eventbus-6.0.5.jar%23142!/:?]
	at net.minecraftforge.eventbus.EventBus.post(EventBus.java:315) ~[eventbus-6.0.5.jar%23142!/:?]
	at net.minecraftforge.eventbus.EventBus.post(EventBus.java:296) ~[eventbus-6.0.5.jar%23142!/:?]
	at net.minecraftforge.client.ForgeHooksClient.onKeyInput(ForgeHooksClient.java:726) ~[forge-1.20.1-47.1.106-universal.jar%23445!/:?]
	at net.minecraft.client.KeyboardHandler.m_90893_(KeyboardHandler.java:435) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
	at net.minecraft.client.KeyboardHandler.m_167831_(KeyboardHandler.java:466) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
	at net.minecraft.util.thread.BlockableEventLoop.execute(BlockableEventLoop.java:102) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
	at net.minecraft.client.KeyboardHandler.m_90938_(KeyboardHandler.java:465) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
	at org.lwjgl.glfw.GLFWKeyCallbackI.callback(GLFWKeyCallbackI.java:44) ~[lwjgl-glfw-3.3.1.jar%23137!/:build 7]
	at org.lwjgl.system.JNI.invokeV(Native Method) ~[lwjgl-3.3.1.jar%23129!/:build 7]
	at org.lwjgl.glfw.GLFW.glfwPollEvents(GLFW.java:3403) ~[lwjgl-glfw-3.3.1.jar%23137!/:build 7]
	at com.mojang.blaze3d.systems.RenderSystem.pollEvents(RenderSystem.java:201) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
	at com.mojang.blaze3d.systems.RenderSystem.flipFrame(RenderSystem.java:219) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
	at com.mojang.blaze3d.platform.Window.m_85435_(Window.java:274) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
	at net.minecraft.client.Minecraft.m_91383_(Minecraft.java:1170) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
	at net.minecraft.client.Minecraft.m_91374_(Minecraft.java:718) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
	at net.minecraft.client.main.Main.main(Main.java:218) ~[1.20.1-47.1.106.jar:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
	at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:?]
	at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:126) ~[loader-47.2.2.jar:47.2]
	at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:114) ~[loader-47.2.2.jar:47.2]
	at net.minecraftforge.fml.loading.targets.CommonClientLaunchHandler.runService(CommonClientLaunchHandler.java:24) ~[loader-47.2.2.jar:47.2]
	at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:108) ~[loader-47.2.2.jar:47.2]
	at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.Launcher.run(Launcher.java:108) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.Launcher.main(Launcher.java:78) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141) ~[bootstraplauncher-1.1.2.jar:?]
[19Feb2025 20:26:42.489] [Render thread/WARN] [Oculus/]: Error while parsing the block ID map entry for "block.10104":
[19Feb2025 20:26:42.490] [Render thread/WARN] [Oculus/]: - The block minecraft:stone_slab has no property with the name variant, ignoring!
[19Feb2025 20:26:42.521] [Render thread/INFO] [ChunkBuilder/]: Stopping worker threads
[19Feb2025 20:26:42.534] [Render thread/INFO] [ChunkBuilder/]: Started 6 worker threads
[19Feb2025 20:26:42.543] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Toggled shaders to ComplementaryUnbound_r5.4.zip!
[19Feb2025 20:26:45.164] [Render thread/INFO] [com.mojang.blaze3d.platform.GlDebug/]: OpenGL debug message: id=0, source=API, type=ERROR, severity=HIGH, message='Unknown internal debug message. The NVIDIA OpenGL driver has encountered
an out of memory error. This application might
behave inconsistently and fail.
(pid=87432 javaw.exe 64bit)'
[19Feb2025 20:26:45.164] [Render thread/INFO] [com.mojang.blaze3d.platform.GlDebug/]: OpenGL debug message: id=1285, source=API, type=ERROR, severity=HIGH, message='GL_OUT_OF_MEMORY error generated. Failed to allocate memory for buffer data.'
[19Feb2025 20:26:45.164] [Render thread/INFO] [com.mojang.blaze3d.platform.GlDebug/]: OpenGL debug message: id=1281, source=API, type=ERROR, severity=HIGH, message='GL_INVALID_VALUE error generated. Invalid size and/or offsets.'
[19Feb2025 20:26:45.165] [Render thread/INFO] [com.mojang.blaze3d.platform.GlDebug/]: OpenGL debug message: id=1281, source=API, type=ERROR, severity=HIGH, message='GL_INVALID_VALUE error generated. Invalid size and/or offsets.'

Additional context

The complementary warning about the pale gardens doesn't appear to actually affect the crash, but I left it in the snippet in case. Tbh this is probably just a driver issue with how old and slow this gpu is, but I don't see any driver updates and it doesn't happen as frequently on Iris so idk.

On some occasions it completely resets all my window borders to Windows 7 style for like 3 seconds and crashes my discord (which is running Vencord with gpu accel enabled). I think those issues are just caused by Windows panicking because it doesn't have the VRAM to render any of the other windows with the heavier Windows 10 stuff.

commented

Doesn't seem to be related to oculus or anything, I removed embeddium and oculus and it crashes even faster

commented

i also noticed this strange chunk rendering issue. don't know if it's related. rejoining world fixes it.

https://imgur.com/a/qMpDFcs (uploaded to imgur bc for some reason github doesn't like me uploading a 30mb mp4)

My ram usage is also really high, I have 16 gb total and 8 gb is allocated to mc. In task manager it only shows up as using ~4 GB, and I don't have nearly enough high ram usage apps to use up the rest of the ram (highest is discord at under 600mb), but the total usage is 97-100% (fluctuates a bit). Most likely a different memory leak from one of the random mods in the pack (or JRE just being weird), hard to say. Definitely is related to my minecraft instance though.

commented

Other performance-related mods include Dynamic FPS, FerriteCore, Kyxsis/Noisium (worldgen opt, doubt they are related), Memory Leak Fix, ModernFix, and Starlight.

commented

Have same BIOME stuff crash

commented

Have same BIOME stuff crash

The biome warning is just because that shader pack is made for 1.21.5+ so the game doesn’t know what it means by BIOME_PALE_GARDEN in older versions. Shouldn’t affect the crash.