You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As per the Tier 1.5 discussion in #10406 (and the open PR to add the definition into the docs in #10548), I'd like to propose we add Windows ARM64 to Tier 1.5 over the next few months.
Windows on ARM64 is becoming more popular, and we've seen several requests for native support:
Initially I think we should add just Python 3.14 support (no free-threading) as a test. I expect most bugs will be either related to word sizes or LLVM linker issues with MCJIT, so once we are happy with it, we can talk about expanding the support to more Python versions.
Hi, just wanted to update this issue to note that we are actively working on this. I don't have a precise ETA yet, because we expect to discover if LLVM (especially MCJIT) has any yet-unknown Windows ARM64 bugs that impact Numba. We're hoping to have something building in GHA, even if not fully working, by the end of the month, and want to ship experimental packages hopefully around the time that Python 3.15 is released.
Currently, there is one bug in llvmlite on windows ARM64 which is affecting the Unicodesets test cases in Numba. Kindly refer to the following trackers:
Hi @seibert, Now that the PR fixing the Numba UnicodeSet test failures has been merged, could you share the ETA for the Windows ARM64 releases?
Hello @MugundanMCW,
Release candidates for llvmlite 0.49 and Numba 0.67 are currently being prepared. These releases will include numpy2.5 support and the first Windows ARM64 binaries, both conda packages and wheels.
I have tried this with python 3.14 and 3.11 on both Windows and WSL, but unfortunately still have the same compilation error. Testing the minimal example from the docs:
DefIdx 1 exceeds machine model writes for early-clobber %25:gpr64sp, %26:gpr64 = LDRXpost %4:gpr64sp(tied-def 0), 8 ::(load (s64) from %ir.lsr.iv9)
(Try with MCSchedModel.CompleteModel set to false)incomplete machine model
UNREACHABLE executed at C:\a\_temp\conda-base\conda-bld\llvmdev_1782178184130\work\llvm\lib\CodeGen\TargetSchedule.cpp:226!
Numba was installed in a clean venv from the wheel.
numba -s from Windows with Python 3.14
__Time Stamp__
Report started (local time) : 2026-08-14 10:20:00.170197
UTC start time : 2026-08-14 08:20:00.170223
Running time (s) : 2.661254
__Hardware Information__
Machine : ARM64
CPU Name : oryon-1
CPU Count : 12
Number of accessible CPUs : ?
List of accessible CPUs cores : ?
CFS Restrictions (CPUs worth of runtime) : None
CPU Features : aes bf16 crc dotprod fullfp16 i8mm
jsconv lse rcpc sha2
Memory Total (MB) : 59973
Memory Available (MB) : 19395
__OS Information__
Platform Name : Windows-11-10.0.26200-SP0
Platform Release : 11
OS Name : Windows
OS Version : 10.0.26200
OS Specific Version : 11 10.0.26200 SP0 Multiprocessor Free
Libc Version : ?
__Python Information__
Python Compiler : MSC v.1944 64 bit (ARM64)
Python Implementation : CPython
Python Version : 3.14.4
Python Locale : en_AU.cp1252
__Numba Toolchain Versions__
Numba Version : 0.67.0
llvmlite Version : 0.49.0
__LLVM Information__
LLVM Version : 22.1.0
__CUDA Information__
CUDA Target Implementation : Built-in
CUDA Device Initialized : False
CUDA Driver Version : ?
CUDA Runtime Version : ?
CUDA NVIDIA Bindings Available : ?
CUDA NVIDIA Bindings In Use : ?
CUDA Minor Version Compatibility Available : ?
CUDA Minor Version Compatibility Needed : ?
CUDA Minor Version Compatibility In Use : ?
CUDA Detect Output:
None
CUDA Libraries Test Output:
None
__NumPy Information__
NumPy Version : 2.5.2
NumPy Supported SIMD features : ('NEON', 'NEON_FP16', 'NEON_VFPV4', 'ASIMD')
NumPy Supported SIMD dispatch : ('ASIMDHP', 'ASIMDDP', 'ASIMDFHM')
NumPy Supported SIMD baseline : ('NEON', 'NEON_FP16', 'NEON_VFPV4', 'ASIMD')
__SVML Information__
SVML State, config.USING_SVML : False
SVML Library Loaded : False
llvmlite Using SVML Patched LLVM : False
SVML Operational : False
__Threading Layer Information__
TBB Threading Layer Available : False
+--> Disabled due to Unknown import problem.
OpenMP Threading Layer Available : True
+-->Vendor: MS
Workqueue Threading Layer Available : True
+-->Workqueue imported successfully.
__Numba Environment Variable Information__
None found.
__Conda Information__
Conda not available.
__Installed Packages__
Package Version
-------- -------
llvmlite 0.49.0
numba 0.67.0
numpy 2.5.2
pip 26.2.1
No errors reported.
__Warning log__
Warning (cuda): CUDA driver library cannot be found or no CUDA enabled devices are present.
Exception class: <class 'numba.cuda.cudadrv.error.CudaSupportError'>
Warning: Conda not available.
Warning (psutil): psutil cannot be imported. For more accuracy, consider installing it.
Looks like another oryon-specific backend error in LLVM. @jasperlittle if you set the environment variable NUMBA_CPU_NAME="generic", does that work around the issue?
This might be same issue as #10388 and needs this suggested patch #10388 (comment) to llvmdev. I'm working to rebuild llvmdev for next release as part of manylinux image upgrade (numba/llvmlite#1471), can someone open a PR with that patch to llvmdev recipe ? I can review it.
@seibert I think with the availability of artifacts for win-arm64 and a mention in the docs:
Wheel packages on the PyPI distribution system and conda packages on the Anaconda dot org distribution system for Python 3.14 only. Support for additional Python versions may be added in the future.
win-arm64 (Windows on 64-bit ARM)
This can be closed now? Artifacts are available, CI is setup, support is documented.
Activity
esc commentedon Apr 21, 2026
This was discussed during the maintainer meeting today and no objections to moving forward with this were raised:
https://hackmd.io/vYBWLcuZT7eYj4vDyCzZAw
seibert commentedon Jun 10, 2026
Hi, just wanted to update this issue to note that we are actively working on this. I don't have a precise ETA yet, because we expect to discover if LLVM (especially MCJIT) has any yet-unknown Windows ARM64 bugs that impact Numba. We're hoping to have something building in GHA, even if not fully working, by the end of the month, and want to ship experimental packages hopefully around the time that Python 3.15 is released.
MugundanMCW commentedon Jun 10, 2026
Hi @seibert
Currently, there is one bug in llvmlite on windows ARM64 which is affecting the Unicodesets test cases in Numba. Kindly refer to the following trackers:
Thanks
MugundanMCW commentedon Jul 22, 2026
Hi @seibert,
Now that the PR fixing the Numba UnicodeSet test failures has been merged, could you share the ETA for the Windows ARM64 releases?
swap357 commentedon Jul 22, 2026
Hello @MugundanMCW,
Release candidates for llvmlite 0.49 and Numba 0.67 are currently being prepared. These releases will include numpy2.5 support and the first Windows ARM64 binaries, both conda packages and wheels.
MugundanMCW commentedon Jul 23, 2026
Thanks @swap357 for sharing the ETA
swap357 commentedon Aug 12, 2026
Windows-arm64 wheels are now available with
Numba 0.67.0andllvmlite 0.49.0https://pypi.org/project/numba/0.67.0/#files
Please test and post any findings.
MugundanMCW commentedon Aug 12, 2026
sure @swap357, thanks
jasperlittle commentedon Aug 14, 2026
I have tried this with python 3.14 and 3.11 on both Windows and WSL, but unfortunately still have the same compilation error. Testing the minimal example from the docs:
gives
Numba was installed in a clean venv from the wheel.
numba -s from Windows with Python 3.14
gmarkall commentedon Aug 14, 2026
Looks like another oryon-specific backend error in LLVM. @jasperlittle if you set the environment variable
NUMBA_CPU_NAME="generic", does that work around the issue?jasperlittle commentedon Aug 14, 2026
@gmarkall yup, that works fine on both Windows and WSL
swap357 commentedon Aug 14, 2026
This might be same issue as #10388 and needs this suggested patch #10388 (comment) to llvmdev. I'm working to rebuild
llvmdevfor next release as part of manylinux image upgrade (numba/llvmlite#1471), can someone open a PR with that patch to llvmdev recipe ? I can review it.MugundanMCW commentedon Aug 15, 2026
Yeah sure @swap357, let me create a PR with this patch
esc commentedon Aug 28, 2026
@seibert I think with the availability of artifacts for
win-arm64and a mention in the docs:This can be closed now? Artifacts are available, CI is setup, support is documented.
esc commentedon Aug 28, 2026
FYI: since more versions below 3.14 are no supported, here is a PR to update the docs:
#10805