Hello there,
is there a way to enable multi-thread-compiling in the latest Unity version to speed up the whole process?
Or maybe multi-threading for everything (specially importing Assets ^^)?
Thank you
Hello there,
is there a way to enable multi-thread-compiling in the latest Unity version to speed up the whole process?
Or maybe multi-threading for everything (specially importing Assets ^^)?
Thank you
No, compilation in Unity cannot be multi-threaded, but you can try out the new incremental compiler , which speeds up compile times of larger projects by only compiling changed code (requires using multiple small compilation units via e.g. assembly definition files).
An no, there is no check-box to speed up everything via multi-threading. Unity’s serialization already takes place on multiple threads, but large parts of the asset import are done on the main thread. If you are switching platforms frequently, or are working in a team, you should try out Unity’s Cache Server, which caches already imported assets. This benefits teams when setting up a shared network location, but you can also use it locally on your computer to speed up platform switching.
What problems are you trying to solve specifically? How large is your project and code base? How long are you waiting for compilation and asset import? Besides the general problem if dealing with large projects, there may be specific issues, such as custom AssetProcessors or InitializeOnLoad code which runs every time an asset is imported or script recompiled and could be slow.
Thank you much!!
I ask out of curiosity
Is the Cache Server only useful for me as a single developer if I’m switching the platform often?
I would say yes. For example: You import your project on Windows, it takes x Minutes. Now you switch to Android and it has to compress all textures to a different format, which takes y Minutes. If you now switch back to Windows, you only wait a few minutes, if the Windows import files can be downloaded from the local cache server. In my experience this almost always makes sense, if you intend to release/build for multiple platforms on some point. Other than for switching platforms, the cache server doesn’t help you as a single developer.
Ok, thank you