Repository navigation
Conversation
…l-explore#469) * compile and vmap can produce Sendable closures from Sendable inputs - this idea comes from ml-explore/mlx-swift-lm#589 (@aleroot) - breaking change for compile calls that capture state without using inputs:
* Fix iOS 26.2 launch crash from Logger.isEnabled * rebase and remove previous logging patch --------- Co-authored-by: David Koski <dkoski@apple.com>
ml-explore#481) * Add Sendable closures and 3-parameter VJP support to MLXCustomFunction (ml-explore#475)
…plore#498) GPU.deviceInfo() called MTLCreateSystemDefaultDevice() on every call. In a command-line process the first such call opens a window server session (SLSCreateDefaultMetalDevice -> SLSMainDisplayID -> SLSInitialize -> CGSDisplayInitialize). That step can stall for many seconds. Select the device the same way as metal::load_device in MLX: the first device of MTLCopyAllDevices(), else MTLCreateSystemDefaultDevice(). Compute the value once per process. The public API and the returned fields do not change. Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* MaterializedArray is a Sendable MLXArray - once an array has been evaluated we can use it as Sendable - a subtype of MLXArray that is Sendable - handle MaterializedArray passed as inputs (state) to a compiled function - contents are constant by definition so can be discarded and captured normally - calling materialize inside transforms - tracers inside materialized modules
Brings in the seven upstream commits after 35c10b4: ml-explore#481 (Sendable closures and 3-parameter VJP for MLXCustomFunction), ml-explore#503 (shardedToAllPredicate), ml-explore#494 (iOS 26.2 launch crash from Logger.isEnabled), ml-explore#498 (GPU.deviceInfo device selection), ml-explore#418 (MaterializedArray is Sendable), ml-explore#505 (tripletLoss fix). The cLogSupport removal in release.yml comes in with the merge; no fork-side edit was needed. No conflicts. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
This was referenced Oct 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Real merge of upstream main through 43c90af (seven commits after 35c10b4). Replaces the bot PR #27, which stopped at 863ee9f and still referenced the removed cLogSupport framework in release.yml. Here release.yml has no cLogSupport references.
No conflicts. Fork-side device-scope patch in Transforms+Compile.swift is kept.
🤖 Generated with Claude Code