Open Fidget-Spinner opened 3 days ago
@zooba
Last time I ran benchmarks, clang wasn't any better than MSVC on Windows (the clang-cl support works because I updated it to run this benchmark).
It's also a really significant compatibility change, and there will certainly be users who want to keep building with MSVC. So I don't think we get to drop support entirely - it may only impact the python.org releases (possibly excluding the Store package, I'm not sure if clang support extends that far).
Personally, I doubt it's worth the effort. But if someone wants to make the effort to show that it's both faster and remains binary compatible[^1], then go for it.
[^1]: For stable ABI purposes only, of course.
MSBuild has supported using clang backend for awhile now. https://learn.microsoft.com/en-us/cpp/build/clang-support-msbuild?view=msvc-170
MSVC has been somewhat unpredictable in comparison to the other compilers. We've had reports that it does not benefit from Python 3.11 1, of random slowdowns 2, of ceval.c being too big for MSVC to inline/optimize properly 3, and now, slowdowns that only hit it and no other platform 4.
We should seriously consider switching to another compiler, because it's starting to hinder our own productivity and performance goals on Windows.