4 ms·
It produces faster binaries than clang, sometimes significantly so. ICC produces faster binaries than GCC, but ICC is expensive and GCC is free. MSVC is garba
by nwallin 7y ago
It produces faster binaries than clang, sometimes significantly so.
ICC produces faster binaries than GCC, but ICC is expensive and GCC is free.
MSVC is garbage.
- pjmlp 7y agoDesktop and Game developers happen to share a different opinion.
- MaxBarraclough 7y agoDoes ICC have any traction in the gaming world?
- pjmlp 7y agoIt does on Windows shops that care about the ultimate performance optimization on Intel CPUs and vtune integration.
- MaxBarraclough 7y agoDoesn't that describe all high-budget games? Would the average Unreal-based game be built with ICC?
- pjmlp 7y agoDepends on the studio. Here is an overview and some testimonials, https://software.intel.com/en-us/gamedev/tools https://software.intel.com/en-us/gamedev/tools
- MaxBarraclough 7y agoAt a glance it seems the answer is No. Unreal Engine 4 doesn't officially support icc, for instance. Neither does the Source Engine. I believe the same goes for CryEngine.
- pjmlp 7y agoGoing back to my initial reply, I did not say that everyone was using ICC, rather that desktop and game developers did not share the same opinion regarding ICC and Visual C++. Specially given the lack of tooling that is only matched by C++ Builder, although I did not refer this point on my original reply. So if you are reducing the world to just what Unreal, Source and CryEngine officially support, I wonder how many AAA games have been released on Windows using GCC or clang with those engines.
- MaxBarraclough 7y ago> I did not say that everyone was using ICC, rather that desktop and game developers did not share the same opinion regarding ICC and Visual C++ Yes, sure. MSVC is garbage clearly isn't right. I presume (in the absence of any real data of course) that ICC doesn't result in significant performance advantages over MSVC, for games, or it would have been worth these developer's time to support it. > if you are reducing the world to just what Unreal, Source and CryEngine officially support It's a reduction sure enough, but I think that's a reasonable set of engines to consider. > I wonder how many AAA games have been released on Windows using GCC or clang with those engines I imagine it's none. According to the (quite possibly stale) official wiki, Source does not support Clang, and only supports GCC for building Linux dedicated servers. [0] It looks like Unreal Engine supports Clang for Linux builds [1], but for Windows it seems they really only support MSVC, although Clang can be made to work [2][3] CryEngine supports Clang for Linux builds [4], but not for Windows where it seems to be MSVC-only [5][6] [0] https://developer.valvesoftware.com/wiki/Compiler_Choices https://developer.valvesoftware.com/wiki/Compiler_Choices [1] https://wiki.unrealengine.com/Compiling_For_Linux https://wiki.unrealengine.com/Compiling_For_Linux [2] https://docs.unrealengine.com/en-US/Programming/Development/BuildingUnrealEngine/index.html https://docs.unrealengine.com/en-US/Programming/Development/... [3] https://forums.unrealengine.com/development-discussion/engine-source-github/25515-using-clang-to-compile-on-windows/page3 https://forums.unrealengine.com/development-discussion/engin... [4] https://docs.cryengine.com/display/SDKDOC4/CRYENGINE+on+Linux https://docs.cryengine.com/display/SDKDOC4/CRYENGINE+on+Linu... [5] https://github.com/CRYTEK/CRYENGINE/issues/381 https://github.com/CRYTEK/CRYENGINE/issues/381 [6] https://docs.cryengine.com/display/CEPROG/Building+the+Engine+from+Source+Code https://docs.cryengine.com/display/CEPROG/Building+the+Engin...