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

Performance issues with integrated intel GPUs #127

Open
jikuja opened this issue Jan 30, 2016 · 5 comments
Open

Performance issues with integrated intel GPUs #127

jikuja opened this issue Jan 30, 2016 · 5 comments

Comments

@jikuja
Copy link

jikuja commented Jan 30, 2016

Three newest generations of intel HD graphics GPU drivers seems to have bug which decreases performance. Current workarounds:

  • ask user to use other GPU if available.
  • ask user to wait patiently while MC is loading

Summary of my my findings:

  • Opengl drivers works but MC/forge load is really slow. Examples: http://paste.feed-the-beast.com/view/087c8312 notice timestamps in lines 6311 and 6322. Log with stacktraces: http://paste.feed-the-beast.com/view/a236c548. Clean stacktrace: https://paste.ee/p/PYVjj
  • Present with multiple operating systems(at least with windows 8 and windows 10) and java versions
  • drivers version 10.18.15.4248. (One months old support request with similar symptoms was using 10.18.15.4235 but might be caused by bad memory allocation)
  • driver version: GL info: ' Vendor: 'Intel' Version: '4.2.0 - Build 10.18.10.3540' Renderer: 'Intel(R) HD Graphics 4600' does not have performance problems. (Sorry I misplaced log for this :/) Source for this driver version?
  • Disabling new forge load screen does not fix this
  • Can't test this personally or write SSCCE. No hardware access.

My personal notes: https://paste.ee/p/RNmFU includes links to logs, lists of driver/OS/java versions

Does anyone has access for hardware and good knowledge of opengl to write SSCCE?

Ping #119

@Spasi
Copy link
Member

Spasi commented Jan 31, 2016

Like issue 119, this cannot be something that LWJGL is able to fix. Isn't there an issue open for this at bugs.mojang.com?

Anyway, it looks like some texture creation/generation is taking place between 6311 and 6322. It could be something simple like a data format that forces the Intel driver out of the fast path. Using GL_BGRA and GL_UNSIGNED_INT_8_8_8_8_REV for texture uploads is known to be much faster on Intel hardware. Could someone produce a trace of LWJGL methods called during the slow part?

@grum
Copy link
Collaborator

grum commented Jan 31, 2016

Using GL_BGRA and GL_UNSIGNED_INT_8_8_8_8_REV for texture uploads is known to be much faster on Intel hardware.

Is there a public list/repo/collection of these 'known' things that are 'faster'?

@Spasi
Copy link
Member

Spasi commented Jan 31, 2016

Search for intel GL_UNSIGNED_INT_8_8_8_8_REV and you'll find several references.

I started using it in LWJGL-FX, where texture transfer performance is critical. It made a huge difference on Intel hardware and hadn't any negative impact on other code paths or GPUs.

It might be entirely irrelevant to the problem of course, I don't know what Minecraft's doing there.

@grum
Copy link
Collaborator

grum commented Jan 31, 2016

Yeah, nice that vendors actually document these things .

To my surprise I picked exactly that way to upload the data just because it 'felt the easiest' to from the ARGB BufferedImage provides to BGRA the gpu seems to accept.

@jikuja maybe some mod/plugin uses another way to upload and not the one the game provides?

@jikuja
Copy link
Author

jikuja commented Jan 31, 2016

I fear I have nothing more to give for this discussion with my nonexistent opengl knowledge and with minor forge knowledge.

Should we ping forge devs?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants