Using Clang-CL for Better Performance on Windows on ARM

My apologies if I am bothering the community regarding this topic once again, but WOA platforms are suffering significantly due to the immature software ecosystem available for Windows ARM64. My intention is not to move away from MSVC, but rather to ensure that mature and optimized binaries are available for WOA devices. One reason for advocating clang is its high efficiency on ARM64 SoCs a great example being its widespread use in Mac-based ARM64 chips.

Although we are actively exploring it, our primary concern remains the Python interpreter. Unfortunately, we haven’t seen promising results so far. MSVC for ARM64 has not been able to effectively optimize the interpreter loop, which is why we’ve reverted to using clang-cl for better performance.

We’ve tried encouraging our target audience to use ourlocally compiled binaries for performance gains, but that hasn’t helped much unless the Python community officially accepts them. After all, the end goal is to improve the experience for everyday users. results, received poor performance ratings of device.

I personally don’t believe that adopting clang-cl as the default for WOA would immediately trigger a flood of issue reports. Python on WOA still lacks a broad ecosystem of extensions compared to Windows on x64. For instance, numpy one of the most widely used libraries only released its first WOA version a few weeks ago. I am also seeing discussions on GitHub regarding major Python libraries(numpy, scipy, openblas) considering whether to adopt clang-cl for their Windows on ARM64 release binaries to enhance performance.

Also, believe it’s worth considering the use of clang-cl for Windows on ARM64 beta releases to assess whether it poses potential risks or if it’s a promising idea to adopt.

1 Like