-
-
Notifications
You must be signed in to change notification settings - Fork 21.5k
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
Windows: Link MSVC dynamic debug CRT for debug builds #69294
Windows: Link MSVC dynamic debug CRT for debug builds #69294
Conversation
It seems this change has introduced a major regression in startup times (and perhaps performance?) for me. During the startup CPU gets to 100% utilization and it takes multiple times longer to get into any project, including an empty one. I happen to use VS Code for C++ dev, and I have Godot Tools permanently enabled. With that startup times turn to a crawl. It takes a very long time to get to the splash screen, and then it is so slow to load beyond that I've been sitting for minutes to no avail. It will probably load, I can see activity in the logs, it's just sooo sooo slow. Seems like the language server is doing a lot of stuff on startup, which is multiplied by the regression from this change. I use these flags to build Godot: |
Follow-up to godotengine#69294 which enabled it automatically for `dev_build=yes`, but this seems to cause some issues. Those issues should likely be debugged but until then this can stay opt-in.
I don't know if this is related, but if you compile in debug mode, Godot can decide to compile shaders and that can last for several minutes using 100% all cores. That does not happen twice though, unless the cache gets invalidated. |
Follow-up to godotengine#69294 which enabled it automatically for `dev_build=yes`, but this seems to cause some issues. Those issues should likely be debugged but until then this can stay opt-in.
Follow-up to godotengine#69294 which enabled it automatically for `dev_build=yes`, but this seems to cause some issues. Those issues should likely be debugged but until then this can stay opt-in.
Follow-up to godotengine#69294 which enabled it automatically for `dev_build=yes`, but this seems to cause some issues. Those issues should likely be debugged but until then this can stay opt-in.
Fixes #31608.
Edit: See #69609, it's now opt-in behind the
debug_crt=yes
option.Didn't test, please confirm if this works as expected.
See godotengine/godot-cpp#932 for a similar change in godot-cpp (CC @Faless).
And https://developercommunity.visualstudio.com/t/race-condition-on-g-tss-mutex-with-static-crt/672664 for a reference on the MSVC static CRT bug. Might be worth testing with newer MSVC to see if it's still broken.