File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -12,8 +12,7 @@ next. See [`PLAN.md`](PLAN.md) for the full roadmap and
1212
1313To run Bumblebee models (notably Qwen3) on Apple Silicon with Metal
1414acceleration, via a layered architecture that keeps each layer
15- independently testable and avoids the [ nif_call-deadlock
16- class] ( https://github.com/elixir-nx/emlx/issues/88 ) that grounded EMLX.
15+ independently testable.
1716
1817## Architecture
1918
@@ -24,8 +23,8 @@ Emily.Native (thin NIF shim) — one function per MLX op, no policy
2423MLX C++ (vendored binary) — cocoa-xu/mlx-build prebuilts, pinned
2524```
2625
27- One-directional dispatch: Elixir → C++ → MLX. C++ never calls back into
28- BEAM, so the EMLX # 88 deadlock class is structurally impossible .
26+ One-directional dispatch: Elixir → C++ → MLX. C++ never calls back
27+ into BEAM .
2928
3029## Requirements
3130
@@ -105,8 +104,8 @@ mix test --only soak # memory + concurrency soak harnesses
105104Each layer has its own oracle: hand-computed expected values at the
106105Native layer, ` Nx.BinaryBackend ` on the same inputs at the Backend
107106layer, ` Emily.Backend ` in non-defn mode at the Compiler layer, and
108- HuggingFace Transformers (or EXLA) reference slices end-to-end. A bug
109- can only be introduced in the layer where its test fails.
107+ HuggingFace Transformers reference slices end-to-end. A bug can only
108+ be introduced in the layer where its test fails.
110109
111110## License
112111
You can’t perform that action at this time.
0 commit comments