godot icon indicating copy to clipboard operation
godot copied to clipboard

Godot slow to open, slow to edit, slow to launch simple game [Windows, caused by specific USB peripherals]

Open nicklunt opened this issue 7 years ago • 233 comments

Bugsquad edit:

This bug has been well confirmed as something that's caused by specific USB peripherals and their drivers, apparently triggering an elusive DirectInput bug on Windows which is only reproducible in specific combinations of hardware (both host and peripheral) and drivers. This seems to trigger particularly some brands of USD keyboards, mice or audio devices (especially Digital Audio Converters).

See https://stackoverflow.com/questions/10967795/directinput8-enumdevices-sometimes-painfully-slow which seems to be the reference StackOverflow issue for this problem. We still don't know how to work this around in a way that wouldn't require users to manually upgrade or disable bogus Windows drivers.


Godot version:

3.0.6 from Steam. Also same issue on fresh download from https://godotengine.org/ This happened on previous versions too. It's been happening for about 3 months or so.

OS/device including version:

Windows 10 PRO x86_64 Version 1803 OS build 17134.167

GPU Nvidia GTX980ti GPU driver 398.36

Issue description:

Opening Godot from with steam or from native download takes over 40 seconds. Opening a very simple project in edit mode takes 35 seconds. Pressing the play icon on this project from within Godot takes 46 seconds before the game window opens.

Steps to reproduce: I can reproduce this every time just by opening or creating a basic project. I get the same issues when I launch one of the demo projects, such as multiplayer pong.

Minimal reproduction project:

Here is the minimal project that takes the time mentioned, but I get this issue on all projects. Hello Godot.zip

I have also attached the output from the cmd windows that opens when Godot is launched. cmd_output

nicklunt avatar Jul 29 '18 11:07 nicklunt

NVIDIA, huh? I believe there were reports of slow launches on NVIDIA, you could try searching for "NVIDIA" in issues. End consensus was that there is a driver bug.

Zireael07 avatar Jul 29 '18 12:07 Zireael07

nVidia GeForce GTX 1060 6GB/PCIe/SSE2 here, Godot 3.0.6 opens fine for me (website non-mono version). I know Godot is slightly slower in some cases with nVidia due to bad auto-performance modes, but not that slow (as in 30-second launch instead of 4).

Zylann avatar Jul 29 '18 13:07 Zylann

GTX 960 and 1070 reporting in with same problems. Slooow launch in windows, fast in linux. I really wish this could be fixed, as it is my biggest issue with Godot. I like to launch my game all the time to test small tweaks, but takes too much time in windows with my nvidia GPUs.

fossegutten avatar Jul 29 '18 14:07 fossegutten

Joining in on the issue with a GTX 1070. Tried all stable releases of Godot. Also tried on 3 versions of the latest driver 398.98, 398.82, 398.36. But I did notice that the first time (after driver reinstall, computer reboot) it started up quickly. I'll play around with some Nvidia settings when I'll find the time. This is a big issue and should be looked up a bit more.

Edit: I'll reconfirm that the first start after a system restart works normally. Every subsequent startup takes long (40s).

cimpresovec avatar Aug 12 '18 08:08 cimpresovec

https://www.nvidia.co.kr/Download/driverResults.aspx/137317/en 399.07 driver is released. would you test with it?

volzhs avatar Aug 28 '18 11:08 volzhs

Hey volzhs - yes that seems to have fixed it! Not had time to do extensive testing yet, but just opened/edited/ran a few games and performance was great. Thanks for the heads up on the latest driver.

nicklunt avatar Aug 28 '18 11:08 nicklunt

I dont know how it affects but driver release note contains this.

[GeForce GTX 1050/1070]: OpenGL driver does not release the rendering context correctly. [2305430]

volzhs avatar Aug 28 '18 11:08 volzhs

Great find @volzhs, thanks :)

@fossegutten @cimpresovec Does the update to 399.07 also fix the issue for your cards?

akien-mga avatar Aug 28 '18 12:08 akien-mga

I actually recently did a complete format of my PC and the problem went away with the same driver (398.98). I did try the new driver today and the problem didn't occur. So I don't know what to say. Same driver before and after format but different behavior. I can't say what caused the issue in the previous installation but it deterred me from using Godot.

cimpresovec avatar Aug 28 '18 16:08 cimpresovec

Unfortunately this has started happening again for me. Godot runs OK for about 1 hour or so, then starts running slow again.

The really strange thing is if I reboot my PC, Godot runs fine for a while again, but then starts going slow. However, I'm now pretty sure it's not a Godot issue. Might try and get hold of an AMD card and see if that eliminates the problem for good.

nicklunt avatar Aug 31 '18 17:08 nicklunt

~~GTX750 here; first started noticing slower build and project launch times after a few weeks ago. I figured it had something to do with https://github.com/godotengine/godot/issues/21472#issuecomment-416151678 not building with sse2, since I was new to building, but this problem seems to have only gotten worse over the past few weeks, with 3.1a1 having the longest load times yet.~~

~~I'm currently running driver 399.07.~~

Edit: Maybe not a GPU issue? Noticed extremely high CPU usage and low GPU usage during these slow load times. Taking about 27% CPU (an entire hardware thread's allocation on my CPU), drops to normal levels once loading finishes.

Edit2: Not related to this issue, I've filed another issue.

nobuyukinyuu avatar Sep 01 '18 17:09 nobuyukinyuu

Sorry for late answer. Still super slow, with driver 399.24 on GTX 1070 gpu.

fossegutten avatar Sep 12 '18 12:09 fossegutten

The issue is back for me. Well I noticed it when developing some other application with the Raylib library (uses GLFW underneath). The application showed the same behavior as Godot. I then downloaded Godot and the issue was back. I did notice that after a system restart everything works normal, even after multiple separate runs. The issue starts to occur after some time (didn't test) or after running some heavier games on the system and then trying to run Godot. Unity, on the other hand, is not affected but I haven't tried Defold.

cimpresovec avatar Sep 12 '18 16:09 cimpresovec

What could GLFW and Godot have in common?

Zireael07 avatar Sep 12 '18 17:09 Zireael07

Both use OpenGL under the hood. As do some other programs that I mentioned that don't exhibit the issue.

cimpresovec avatar Sep 12 '18 18:09 cimpresovec

The issue seems to be Open GL yes. Monogame has same behaviour with OpenGL projects, but not with Direct X projects.

fossegutten avatar Sep 16 '18 14:09 fossegutten

Hmm, if the issue exists for all OpenGL things, then it's probably crappy GPU drivers.

Zireael07 avatar Sep 16 '18 15:09 Zireael07

The behavior is not consistent across different OpenGL application. Some work just fine (Unity OpenGL builds, Defold engine etc.). It probably depends on the version used but that is just pure speculations. I sadly can't give any concrete help.

cimpresovec avatar Sep 16 '18 20:09 cimpresovec

same problem here, any tips ?

ozebe avatar Oct 21 '18 20:10 ozebe

My startup time isn't in the 30+ seconds range, but around 5 - 10 seconds. It's definitely slower than it should be. I've tried this with an exported executable, and in-engine. It also happens with GLES3 and GLES2.

I'm using a GTX 1080 on driver 416.16 I'll be updating the driver momentarily and will return with a note about any changed.

Edit: The problem persists with driver 416.34, and (possibly unrelated) it seems a bit slow to start Godot itself, as well as opening a project.

CaptainKraft avatar Nov 04 '18 19:11 CaptainKraft

I'm on Linux and I was running NVIDIA drivers 390.87. It really seemed it was running on software rendering since the high CPU usage during scrolling for example. I installed NVIDIA drivers 410.73 and everything is fine now. Don't know if NVIDIA solved this issues or just re-installing the drivers helped

DanX3 avatar Nov 05 '18 13:11 DanX3

I also tried in Linux, and Godot seems to run great. It's still slow on Windows.

CaptainKraft avatar Nov 10 '18 19:11 CaptainKraft

I also tried in Linux, and Godot seems to run great. It's still slow on Windows.

Which version of Linux are you using? And are you using it in a VM?

nicklunt avatar Nov 10 '18 19:11 nicklunt

Arch Linux. No VM.

CaptainKraft avatar Nov 29 '18 15:11 CaptainKraft

Here at @JavaryGames we are experiencing this with all the computers, some with 1050Ti and some with a 1060. Even with the latest driver (417).

On Linux the same machines run fine, so it's very likely a driver issue.

vnen avatar Dec 18 '18 20:12 vnen

I believe I might be experiencing this issue also on Windows 10 godot 3.0.6

I have an AMD RX 580 though

Ragnoroct avatar Jan 17 '19 02:01 Ragnoroct

Adding my own data points:

Intel i7-3770K CPU 16GB of RAM Windows 7

  1. This problem is with 3.06-stable_win64 and 3.1-alpha5_win64. It takes 30 seconds to 1 minute to load the engine or play a scene.
  2. This can be corrected by restarting the computer, but always returns after several scene plays. May be connected to engine/scene crashes.
  3. This problem happens anytime [once it begins following brief restart 'cure'] the Godot Engine Editor window (with terminal output) anytime "OpenGL ES [X].0 Renderer" appears. So when the executable starts, and when a scene is run.
  4. This is not driver or GPU dependent. I used an RX480 with updated drivers, and a GTX 1070 with updated drivers. The problem did not change. If this

ay200 avatar Jan 19 '19 18:01 ay200

Having this too on a Nvidia GTX 1070

Windows only, opens and runs fine in linux.

DropsOfSerenity avatar Jan 20 '19 23:01 DropsOfSerenity

I'm having the same issue, but on linux with an AMD GPU. I'm having a hard time tracking it down, since this started happening after a system update, but downgrading did not fix it. downgrading godot had no effect either. it takes 30+ seconds to open my project, 30+ seconds to start it, and it stutters (sometimes freezes for a while) any time a new object is shown on screen for the first time. in the editor, basic things like clicking on a node or opening a scene often take 30+ seconds.

when things are frozen sound still plays, godot uses 100% CPU on one core, and neither godot nor dmesg show a single error. at first I thought it might be from compiling shaders, and while using the shader editor and letting it compile can cause a 30 second freeze, it doesn't seem to do so after the first time it happens.

in my case, it seems somewhat random, being either a 10 frame-ish stutter, or 30+ seconds with no in between. it almost always goes away after a thing is loaded, but this behavior resets when godot is closed/reopened, a reboot does not affect it.

retrotails avatar Jan 22 '19 08:01 retrotails

Is your Linux Mint or Arch by any chance?

Zireael07 avatar Jan 22 '19 08:01 Zireael07