| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-07-07 | 20.2 kB | |
| v0.32.0 source code.tar.gz | 2026-07-07 | 4.3 MB | |
| v0.32.0 source code.zip | 2026-07-07 | 4.7 MB | |
| Totals: 3 Items | 9.1 MB | 1 | |
What's Changed
- Generate qmm implementaions with cmake by @zcbenz in https://github.com/ml-explore/mlx/pull/3424
- Enable swap for all CI building CUDA by @zcbenz in https://github.com/ml-explore/mlx/pull/3437
- Bump minor by @angeloskath in https://github.com/ml-explore/mlx/pull/3438
- [CUDA] Fix qmm_naive K-tail dispatch for FP quantized kernels by @Lyxot in https://github.com/ml-explore/mlx/pull/3445
- Keep gguflib input-validation asserts active in release builds by @qflen in https://github.com/ml-explore/mlx/pull/3436
- Reuse nightly build's ccache for release by @zcbenz in https://github.com/ml-explore/mlx/pull/3458
- Add barrier to JACCL by @Isalia20 in https://github.com/ml-explore/mlx/pull/3459
- Add determinant and sign-log-determinant functions to mlx.core.linalg by @abhilashreddys in https://github.com/ml-explore/mlx/pull/3416
- Define ST_F8_E8M0 by @pcuenca in https://github.com/ml-explore/mlx/pull/3448
- Clearer error when shape dimension overflows int32 by @serenposh in https://github.com/ml-explore/mlx/pull/3425
- [CUDA] Fix half type matmul in cutlass kernels by @zcbenz in https://github.com/ml-explore/mlx/pull/3469
- Fix indexing bug in slice update with op by @angeloskath in https://github.com/ml-explore/mlx/pull/3483
- Make device_count() return 0 when there is no GPU by @zcbenz in https://github.com/ml-explore/mlx/pull/3486
- Compute contiguity from the actual occupied data by @sofinvalery in https://github.com/ml-explore/mlx/pull/3475
- Do not use prebuilt cpu compile preamble when headers are installed by @zcbenz in https://github.com/ml-explore/mlx/pull/3463
- [CUDA] Separate main loop into a function in qmm by @zcbenz in https://github.com/ml-explore/mlx/pull/3443
- test: Upcast the random numbers before computing their average by @sofinvalery in https://github.com/ml-explore/mlx/pull/3488
- Pass deployment target when linking metallib by @dhiltgen in https://github.com/ml-explore/mlx/pull/3501
- Fix rope single token multiple sequences by @angeloskath in https://github.com/ml-explore/mlx/pull/3498
- Fix qvm_split_k incorrect batch stride calculation by @angeloskath in https://github.com/ml-explore/mlx/pull/3497
- Fix scatter_prod GPU hang on NaN with contention by @tillahoffmann in https://github.com/ml-explore/mlx/pull/3492
- [jaccl] Fix race on local_staging in MeshImpl::all_reduce by @kernelpool in https://github.com/ml-explore/mlx/pull/3451
- Add MLX_SDPA_BLOCKS env var for 2-pass vector kernel block-count override by @adurham in https://github.com/ml-explore/mlx/pull/3455
- mlx launch clean by @nastya236 in https://github.com/ml-explore/mlx/pull/3513
- [CUDA] Fix gather_mm by @zcbenz in https://github.com/ml-explore/mlx/pull/3503
- [CUDA] Guard qmm_naive scale and bias loads at tile boundaries by @Lyxot in https://github.com/ml-explore/mlx/pull/3509
- win: fix cuda build by @dhiltgen in https://github.com/ml-explore/mlx/pull/3532
- Improve DLPack-compatible array imports by @XXXXRT666 in https://github.com/ml-explore/mlx/pull/3495
- Apply the same thread-local approach to the CPU by @angeloskath in https://github.com/ml-explore/mlx/pull/3537
- removed automatic prepending python in mlx launch by @nastya236 in https://github.com/ml-explore/mlx/pull/3536
- ci: Show stack trace on crash by @zcbenz in https://github.com/ml-explore/mlx/pull/3538
- Handle non-multiple-of-8 spatial dims in depthwise conv2d Metal path by @qflen in https://github.com/ml-explore/mlx/pull/3446
- Remove reference to groups in Conv3D extra_repr by @GriffinMB in https://github.com/ml-explore/mlx/pull/3559
- Add buffer caching to no_gpu CPU allocator by @dhiltgen in https://github.com/ml-explore/mlx/pull/3554
- Fix steel GEMM safe load offset by @sofinvalery in https://github.com/ml-explore/mlx/pull/3560
- Fix singleton lifetime issues at process exit by @dhiltgen in https://github.com/ml-explore/mlx/pull/3555
- Fix doubled-word typos in docstrings by @LeSingh1 in https://github.com/ml-explore/mlx/pull/3561
- Fix off_x/off_y typo in steel BaseMMAFrag::load_safe by @mdegans in https://github.com/ml-explore/mlx/pull/3565
- Synchronize no-GPU cache eviction with CPU streams by @dhiltgen in https://github.com/ml-explore/mlx/pull/3566
- Add JIT compiler support for Windows by @dhiltgen in https://github.com/ml-explore/mlx/pull/3556
- [Metal] Reject tensor-scale nvfp4 in qqmm by @Brooooooklyn in https://github.com/ml-explore/mlx/pull/3551
- Detect int32 shape-product overflow at MLX compute-shape boundaries by @qflen in https://github.com/ml-explore/mlx/pull/3524
- Add
copykeyword tomx.asarrayby @eyupcanakman in https://github.com/ml-explore/mlx/pull/3510 - Fix typos in backend code comments by @adityasingh2400 in https://github.com/ml-explore/mlx/pull/3581
- Implement output_shapes for GatherMM and GatherQMM by @dexwritescode in https://github.com/ml-explore/mlx/pull/3485
- Fix activation docstring math in log_softmax and gelu_approx by @adityasingh2400 in https://github.com/ml-explore/mlx/pull/3590
- docs: expose missing Python APIs by @XXXXRT666 in https://github.com/ml-explore/mlx/pull/3598
- Fix CUDA all-reduce planning for large inputs by @sofinvalery in https://github.com/ml-explore/mlx/pull/3603
- Use uv in macOS CI by @zcbenz in https://github.com/ml-explore/mlx/pull/3491
- Fix HDRS_LIST building when paths in header inclusion tree include spaces by @lancelotblanchard in https://github.com/ml-explore/mlx/pull/3607
- Enable the Metal backend by default on iOS by @eyupcanakman in https://github.com/ml-explore/mlx/pull/3617
- Fix int32 overflow in matvec row offset and gather-MM batch stride by @aicayzer in https://github.com/ml-explore/mlx/pull/3609
- Fix signed-integer overflow (UB) in roll and tile shape arithmetic by @devYRPauli in https://github.com/ml-explore/mlx/pull/3604
- Fix complex VJPs for log and exp by @CameronChurchwell in https://github.com/ml-explore/mlx/pull/3605
- added env variables to propagate width by @nastya236 in https://github.com/ml-explore/mlx/pull/3618
- Correct p-norm computation in triplet_loss by @pchintar in https://github.com/ml-explore/mlx/pull/3613
- Fix threaded compile cache cleanup by @lucasnewman in https://github.com/ml-explore/mlx/pull/3628
- Handle invalid dimensions in SinusoidalPositionalEncoding by @pchintar in https://github.com/ml-explore/mlx/pull/3615
- Correct grammatical typo in label smoothing ValueError by @madhav1k in https://github.com/ml-explore/mlx/pull/3641
- Roll back compile cache entry when the first trace throws by @adityasingh2400 in https://github.com/ml-explore/mlx/pull/3635
- Raise on arange with step == 0 instead of undefined behavior by @devYRPauli in https://github.com/ml-explore/mlx/pull/3640
- Fix data race in tracing state by making it thread-local by @aicayzer in https://github.com/ml-explore/mlx/pull/3638
- Add missing break in bool_ switch case that would result in falling through to the uint8_t case by @psolanki in https://github.com/ml-explore/mlx/pull/3655
- Fix axis param in nll_loss by @ishtihoss in https://github.com/ml-explore/mlx/pull/3651
- Fix Adafactor factored update for params with more than 2 dims by @ishtihoss in https://github.com/ml-explore/mlx/pull/3652
- Emit valid kernel source for non-finite float constants by @tillahoffmann in https://github.com/ml-explore/mlx/pull/3648
- Validate inputs in GroupNorm and InstanceNorm by @ishtihoss in https://github.com/ml-explore/mlx/pull/3653
- Fix flaky test_siblings_without_eval by @zcbenz in https://github.com/ml-explore/mlx/pull/3621
- Fix intermittent wrong bias gradient in fast::layer_norm VJP (Metal WAR hazard) by @tillahoffmann in https://github.com/ml-explore/mlx/pull/3630
- NAX requires setting MACOSX_DEPLOYMENT_TARGET=26.2 by @zcbenz in https://github.com/ml-explore/mlx/pull/3622
- Catch error in CommandBuffer and poison the events by @zcbenz in https://github.com/ml-explore/mlx/pull/3523
- [Improvement] CopyType::Vector in concatenate if axis=0 and contiguous by @nastya236 in https://github.com/ml-explore/mlx/pull/3663
- Fix Q4_1 GGUF loading by @ricky-chaoju in https://github.com/ml-explore/mlx/pull/3664
- Fix tree_map_with_path for namedtuples by @chrismicah in https://github.com/ml-explore/mlx/pull/3674
- Fix gather_qmm NAX kernel name mismatch by @scyyh11 in https://github.com/ml-explore/mlx/pull/3632
- Add bits and smallest_normal to finfo by @katlun-lgtm in https://github.com/ml-explore/mlx/pull/3679
- Fix use-after-free when a custom Metal kernel is called with different dtypes in one graph by @discobot in https://github.com/ml-explore/mlx/pull/3662
- Fix dimension count in orthogonal initializer error message by @Pablosinyores in https://github.com/ml-explore/mlx/pull/3693
- fix grid for large uncontiguous input by @nastya236 in https://github.com/ml-explore/mlx/pull/3666
- Ignore numpy matmul warnings in test_blas by @zcbenz in https://github.com/ml-explore/mlx/pull/3657
- Fix repeat zero axis shape by @chrismicah in https://github.com/ml-explore/mlx/pull/3698
- Cache JIT-compiled CUDA kernels by @zcbenz in https://github.com/ml-explore/mlx/pull/3587
- [CUDA] JIT-compile qmm_naive by @zcbenz in https://github.com/ml-explore/mlx/pull/3576
- Support namedtuple and tuple subclasses in tree_merge by @Pablosinyores in https://github.com/ml-explore/mlx/pull/3703
- Fix mx.sort vjp to transpose the permutation by @obchain in https://github.com/ml-explore/mlx/pull/3700
- Add isdtype, result_type, and can_cast by @katlun-lgtm in https://github.com/ml-explore/mlx/pull/3681
- [fix] allow exporting custom Metal kernels without a Metal backend by @xthomaswang in https://github.com/ml-explore/mlx/pull/3650
- Make step activation inclusive at the threshold by @Pablosinyores in https://github.com/ml-explore/mlx/pull/3694
- Add new_thread_unsafe_stream API by @zcbenz in https://github.com/ml-explore/mlx/pull/3578
- Fix JVPs of power, divmod, and slice_update with partly traced inputs by @qflen in https://github.com/ml-explore/mlx/pull/3636
- Add flip and unstack by @katlun-lgtm in https://github.com/ml-explore/mlx/pull/3683
- Fix int16 overflow in NAX qmm edge-tile bounds by @scyyh11 in https://github.com/ml-explore/mlx/pull/3631
- Make gemv JIT compilable by @angeloskath in https://github.com/ml-explore/mlx/pull/3705
- Fix gaussian_nll_loss documented default reduction (none -> mean) by @Pablosinyores in https://github.com/ml-explore/mlx/pull/3715
- Fix optimizer epsilon validation message and AdaDelta eps doc by @Pablosinyores in https://github.com/ml-explore/mlx/pull/3712
- Add array API standard aliases for existing ops by @katlun-lgtm in https://github.com/ml-explore/mlx/pull/3678
- Fix ConvTranspose kernel size repr by @ishtihoss in https://github.com/ml-explore/mlx/pull/3724
- [CUDA] Disable managed memory on Tegra by @gmondada in https://github.com/ml-explore/mlx/pull/3701
- Update nanobind to 2.13.0 by @XXXXRT666 in https://github.com/ml-explore/mlx/pull/3722
- Fix JVPs of select, arctan2, masked_scatter, and bitwise ops by @qflen in https://github.com/ml-explore/mlx/pull/3633
- array API: add empty, empty_like (pure aliases), astype, matrix_transpose by @katlun-lgtm in https://github.com/ml-explore/mlx/pull/3729
- Add metal::set_metallib_path() to override the metallib search path by @olilarkin in https://github.com/ml-explore/mlx/pull/3597
- Add Metal DLPack zero-copy sharing by @XXXXRT666 in https://github.com/ml-explore/mlx/pull/3531
- Bump actions/checkout from 6 to 7 by @dependabot[bot] in https://github.com/ml-explore/mlx/pull/3741
- Fix shapeless compile eliding reductions over size-1 dimensions by @discobot in https://github.com/ml-explore/mlx/pull/3672
- [CUDA] JIT-compile qmm_sm80/qmm_sm90/gather_gemm by @zcbenz in https://github.com/ml-explore/mlx/pull/3706
- [CUDA] Make qmv support global scale by @zcbenz in https://github.com/ml-explore/mlx/pull/3723
- Add VJP for cumulative max and min scans by @devin-lai in https://github.com/ml-explore/mlx/pull/3599
- Fix abs jvp for complex inputs by @obchain in https://github.com/ml-explore/mlx/pull/3745
- Fix update_modules crash on over-length module lists by @Pablosinyores in https://github.com/ml-explore/mlx/pull/3743
- Add matrix_norm to array API namespace by @wgu9 in https://github.com/ml-explore/mlx/pull/3749
- Guard scatter_axis against 64-bit outputs on the GPU by @obchain in https://github.com/ml-explore/mlx/pull/3695
- Fix build on Apple clang 15 in cpu_nd_array_to_mlx by @obchain in https://github.com/ml-explore/mlx/pull/3751
- metal: cache x in registers in rms_single_row to avoid redundant global read by @will-march in https://github.com/ml-explore/mlx/pull/3754
- Document row-wise sparsity in nn.init.sparse by @Pablosinyores in https://github.com/ml-explore/mlx/pull/3752
- [CUDA] [Improvement] Rope without copy by @nastya236 in https://github.com/ml-explore/mlx/pull/3704
- Add small-batch quantized matvec kernel (qmv_wide) by @jessegross in https://github.com/ml-explore/mlx/pull/3764
- Fix docstring nits by @ishtihoss in https://github.com/ml-explore/mlx/pull/3758
- Fix logsumexp jvp to reduce along the axis by @obchain in https://github.com/ml-explore/mlx/pull/3708
- Add vecdot to array API namespace by @wgu9 in https://github.com/ml-explore/mlx/pull/3748
- Fix CPU dynamic slice copy bound for collapsed shapes by @Lyxot in https://github.com/ml-explore/mlx/pull/3739
- Enable fused SDPA vector kernel for asymmetric Q/V head dims (192, 128) by @yohann-bearzi in https://github.com/ml-explore/mlx/pull/3637
- array API: add positive, logical_xor, trunc, count_nonzero, diff, full_like by @katlun-lgtm in https://github.com/ml-explore/mlx/pull/3730
- array API: add cumulative_sum and cumulative_prod by @katlun-lgtm in https://github.com/ml-explore/mlx/pull/3731
- Fix complex vjps for several unary ops by @obchain in https://github.com/ml-explore/mlx/pull/3766
- Fix Upsample align_corners singleton output by @ishtihoss in https://github.com/ml-explore/mlx/pull/3769
- Add CI for Windows CUDA build by @zcbenz in https://github.com/ml-explore/mlx/pull/3775
- Fix multi-wire recv prefill deadlock in jaccl ring backend by @jasonpaulso in https://github.com/ml-explore/mlx/pull/3654
- fix: Quote hostname in mlx.launch ssh commands by @varshneydevansh in https://github.com/ml-explore/mlx/pull/3783
- Fix BatchNorm docstring to cover 4D input and test the NHWC path by @Pablosinyores in https://github.com/ml-explore/mlx/pull/3782
- Fix kl_div_loss docstring formula and two doc nits by @Pablosinyores in https://github.com/ml-explore/mlx/pull/3788
- Fix HardShrink to accept its documented lambd argument by @Pablosinyores in https://github.com/ml-explore/mlx/pull/3786
- Refactor macOS CI by @zcbenz in https://github.com/ml-explore/mlx/pull/3806
- Bypass the PyTorch index TLS issues by @angeloskath in https://github.com/ml-explore/mlx/pull/3808
- Fix fp quantized matvec for output dim < 8 by @katlun-lgtm in https://github.com/ml-explore/mlx/pull/3804
- Fix CUDA RMSNorm small-row dispatch by @dhiltgen in https://github.com/ml-explore/mlx/pull/3792
- Fix Conv3d docstring argument order (padding before dilation) by @Pablosinyores in https://github.com/ml-explore/mlx/pull/3793
- Add math mode option for custom Metal kernels by @shubhxho in https://github.com/ml-explore/mlx/pull/3728
- Fix binary_cross_entropy docstring argument order (weights before with_logits) by @Pablosinyores in https://github.com/ml-explore/mlx/pull/3807
- Fix compiled kernel correctness for negative-strided inputs by @lyonsno in https://github.com/ml-explore/mlx/pull/3720
- Use large runner for Windows CUDA builds by @zcbenz in https://github.com/ml-explore/mlx/pull/3809
- Fix wrong type parameter passed to gemm_splitk_nax by @zcbenz in https://github.com/ml-explore/mlx/pull/3810
- Document default value of dilation in conv layer docstrings by @Pablosinyores in https://github.com/ml-explore/mlx/pull/3811
- Fix CPU gather transposing column-contiguous slices by @tillahoffmann in https://github.com/ml-explore/mlx/pull/3647
- Fix infinite norm negative axis mismatch bug for matrices with 2 or more dimensions. by @danlee2002 in https://github.com/ml-explore/mlx/pull/3756
- Fix conv2 gradients in grouped strided case on Metal by @ericphanson in https://github.com/ml-explore/mlx/pull/3800
New Contributors
- @qflen made their first contribution in https://github.com/ml-explore/mlx/pull/3436
- @Isalia20 made their first contribution in https://github.com/ml-explore/mlx/pull/3459
- @abhilashreddys made their first contribution in https://github.com/ml-explore/mlx/pull/3416
- @serenposh made their first contribution in https://github.com/ml-explore/mlx/pull/3425
- @sofinvalery made their first contribution in https://github.com/ml-explore/mlx/pull/3475
- @tillahoffmann made their first contribution in https://github.com/ml-explore/mlx/pull/3492
- @adurham made their first contribution in https://github.com/ml-explore/mlx/pull/3455
- @GriffinMB made their first contribution in https://github.com/ml-explore/mlx/pull/3559
- @LeSingh1 made their first contribution in https://github.com/ml-explore/mlx/pull/3561
- @mdegans made their first contribution in https://github.com/ml-explore/mlx/pull/3565
- @eyupcanakman made their first contribution in https://github.com/ml-explore/mlx/pull/3510
- @adityasingh2400 made their first contribution in https://github.com/ml-explore/mlx/pull/3581
- @dexwritescode made their first contribution in https://github.com/ml-explore/mlx/pull/3485
- @lancelotblanchard made their first contribution in https://github.com/ml-explore/mlx/pull/3607
- @aicayzer made their first contribution in https://github.com/ml-explore/mlx/pull/3609
- @devYRPauli made their first contribution in https://github.com/ml-explore/mlx/pull/3604
- @pchintar made their first contribution in https://github.com/ml-explore/mlx/pull/3613
- @madhav1k made their first contribution in https://github.com/ml-explore/mlx/pull/3641
- @psolanki made their first contribution in https://github.com/ml-explore/mlx/pull/3655
- @ishtihoss made their first contribution in https://github.com/ml-explore/mlx/pull/3651
- @ricky-chaoju made their first contribution in https://github.com/ml-explore/mlx/pull/3664
- @chrismicah made their first contribution in https://github.com/ml-explore/mlx/pull/3674
- @scyyh11 made their first contribution in https://github.com/ml-explore/mlx/pull/3632
- @katlun-lgtm made their first contribution in https://github.com/ml-explore/mlx/pull/3679
- @discobot made their first contribution in https://github.com/ml-explore/mlx/pull/3662
- @Pablosinyores made their first contribution in https://github.com/ml-explore/mlx/pull/3693
- @obchain made their first contribution in https://github.com/ml-explore/mlx/pull/3700
- @xthomaswang made their first contribution in https://github.com/ml-explore/mlx/pull/3650
- @gmondada made their first contribution in https://github.com/ml-explore/mlx/pull/3701
- @olilarkin made their first contribution in https://github.com/ml-explore/mlx/pull/3597
- @devin-lai made their first contribution in https://github.com/ml-explore/mlx/pull/3599
- @wgu9 made their first contribution in https://github.com/ml-explore/mlx/pull/3749
- @will-march made their first contribution in https://github.com/ml-explore/mlx/pull/3754
- @yohann-bearzi made their first contribution in https://github.com/ml-explore/mlx/pull/3637
- @jasonpaulso made their first contribution in https://github.com/ml-explore/mlx/pull/3654
- @varshneydevansh made their first contribution in https://github.com/ml-explore/mlx/pull/3783
- @shubhxho made their first contribution in https://github.com/ml-explore/mlx/pull/3728
- @lyonsno made their first contribution in https://github.com/ml-explore/mlx/pull/3720
- @danlee2002 made their first contribution in https://github.com/ml-explore/mlx/pull/3756
- @ericphanson made their first contribution in https://github.com/ml-explore/mlx/pull/3800
Full Changelog: https://github.com/ml-explore/mlx/compare/v0.31.2...v0.32.0