# \#metaljl

**URL:** https://discourse.julialang.org/tag/metaljl/1334.md

[Latest](https://discourse.julialang.org/latest.md) · [Categories](https://discourse.julialang.org/categories.md) · [Tags](https://discourse.julialang.org/tags.md)

---

## [Inverting ComplexF32 with Metal.jl throws an error](https://discourse.julialang.org/t/inverting-complexf32-with-metal-jl-throws-an-error/137991)

<div class="topic-metadata">

**Author:** [@phx](https://discourse.julialang.org/u/phx)\
**Replies:** 2\
**Last updated:** [July 7, 2026, 11:50pm UTC](https://discourse.julialang.org/t/inverting-complexf32-with-metal-jl-throws-an-error/137991 "2026-07-07T23:50:02Z")

</div>

Hi everyone! I’m working with Metal.jl on an Apple Silicon GPU and I’ve encountered the following issue. When computing the inverse of ComplexF32 numbers, some Float64 numbers seem to sneak in and cause Metal.jl to throw…

---

## [Metal 4 TensorOps](https://discourse.julialang.org/t/metal-4-tensorops/137202)

<div class="topic-metadata">

**Author:** [@JarJar](https://discourse.julialang.org/u/JarJar)\
**Replies:** 0\
**Last updated:** [May 19, 2026, 10:46pm UTC](https://discourse.julialang.org/t/metal-4-tensorops/137202 "2026-05-19T22:46:54Z")

</div>

Hi, Does Metal.jl support the new Metal 4 TensorOps API? Thanks!

---

## [Large ODE Solver for Metal.jl](https://discourse.julialang.org/t/large-ode-solver-for-metal-jl/134769)

<div class="topic-metadata">

**Author:** [@Gavin-Rockwood](https://discourse.julialang.org/u/Gavin-Rockwood)\
**Replies:** 11\
**Last updated:** [December 29, 2025, 2:49am UTC](https://discourse.julialang.org/t/large-ode-solver-for-metal-jl/134769 "2025-12-29T02:49:29Z")

</div>

Is there any implementation for ODE solving using Metal.jl backends? I know there is DiffEqGPU, but the metal support is only for ensemble problems. I cannot for instance do f(u,p,t) = A\*u tspan = (0.0f0, 1.0f0) prob = …

---

## [Sparse matrix multiplication for Metal](https://discourse.julialang.org/t/sparse-matrix-multiplication-for-metal/131088)

<div class="topic-metadata">

**Author:** [@Marco\_Lombardi](https://discourse.julialang.org/u/Marco_Lombardi)\
**Replies:** 15\
**Last updated:** [July 31, 2025, 5:59pm UTC](https://discourse.julialang.org/t/sparse-matrix-multiplication-for-metal/131088 "2025-07-31T17:59:44Z")

</div>

I need to perform a multiplication between two fairly large sparse matrices C = A \* B and I would like to try using the GPU for that. The problem arises in a context where A represents a fixed 2D convolution kernel, whil…

---

## [Bad interaction of Metal.jl and PyPlot on julia 1.11.2](https://discourse.julialang.org/t/bad-interaction-of-metal-jl-and-pyplot-on-julia-1-11-2/123759)

<div class="topic-metadata">

**Author:** [@Andrea\_Pagnani](https://discourse.julialang.org/u/Andrea_Pagnani)\
**Replies:** 1\
**Last updated:** [February 26, 2025, 6:01pm UTC](https://discourse.julialang.org/t/bad-interaction-of-metal-jl-and-pyplot-on-julia-1-11-2/123759 "2025-02-26T18:01:09Z")

</div>

Dearests, Still fighting to test the GPU on my new macbook pro M4. Fresh new environment on version 1.11.2 (TEST\_PYPLOT) pkg\> add Metal, PyPlot (TEST\_PYPLOT) pkg\> add Metal, PyPlot Resolving package versions... …

---

## [MLX and Apple silicon](https://discourse.julialang.org/t/mlx-and-apple-silicon/125136)

<div class="topic-metadata">

**Author:** [@Hareruya](https://discourse.julialang.org/u/Hareruya)\
**Replies:** 4\
**Last updated:** [January 24, 2025, 2:44am UTC](https://discourse.julialang.org/t/mlx-and-apple-silicon/125136 "2025-01-24T02:44:02Z")

</div>

Good evening. I have recently bought an M4 MacbookPro Max and have been using it to do some programming in my free time, messing around with image processing on the side. The machine is very powerful and energy efficien…

---

## [Unreasonable memory usage with M4 GPU](https://discourse.julialang.org/t/unreasonable-memory-usage-with-m4-gpu/123890)

<div class="topic-metadata">

**Author:** [@Andrea\_Pagnani](https://discourse.julialang.org/u/Andrea_Pagnani)\
**Replies:** 2\
**Last updated:** [December 21, 2024, 8:48am UTC](https://discourse.julialang.org/t/unreasonable-memory-usage-with-m4-gpu/123890 "2024-12-21T08:48:08Z")

</div>

Dearests, my fight to make a reasonable use of my M4 GPU continues. Metal.versioninfo()macOS 15.1.1, Darwin 24.1.0 Toolchain: Julia: 1.11.2 LLVM: 16.0.6 Julia packages: Metal.jl: 1.4.2 GPUArrays: 10.3.1 GPUCompil…

---

## [Flux and Metal circular dependencies in 1.10.7](https://discourse.julialang.org/t/flux-and-metal-circular-dependencies-in-1-10-7/123698)

<div class="topic-metadata">

**Author:** [@Andrea\_Pagnani](https://discourse.julialang.org/u/Andrea_Pagnani)\
**Replies:** 2\
**Last updated:** [December 11, 2024, 11:25am UTC](https://discourse.julialang.org/t/flux-and-metal-circular-dependencies-in-1-10-7/123698 "2024-12-11T11:25:16Z")

</div>

Dearests, I was inspecting my new MacBook pro M4 GPU capabilities. I created a TestMetal package on a fresh new environment in 1.10.7. I added Metal and Flux but received warnings that a circular dependency was detected…

---

## [Metal.jl weird behavior above 2^27](https://discourse.julialang.org/t/metal-jl-weird-behavior-above-2-27/123261)

<div class="topic-metadata">

**Author:** [@jvsaddic](https://discourse.julialang.org/u/jvsaddic)\
**Replies:** 1\
**Last updated:** [November 29, 2024, 6:53pm UTC](https://discourse.julialang.org/t/metal-jl-weird-behavior-above-2-27/123261 "2024-11-29T18:53:51Z")

</div>

Hi! I am new to GPU programming, and I have been experimenting with Metal.jl As practice, I wrote this little program to estimate pi using the Monte Carlo method. using Metal using Random throw\_dart(a) = (2\*a - 1)^2 d…

---

## [Putting obj files on the GPU with Metal.jl](https://discourse.julialang.org/t/putting-obj-files-on-the-gpu-with-metal-jl/118416)

<div class="topic-metadata">

**Author:** [@dchang10](https://discourse.julialang.org/u/dchang10)\
**Replies:** 0\
**Last updated:** [August 20, 2024, 1:58pm UTC](https://discourse.julialang.org/t/putting-obj-files-on-the-gpu-with-metal-jl/118416 "2024-08-20T13:58:54Z")

</div>

How do I bring mesh from obj files onto the GPU? I am trying to do some GPU manipulation of meshes from .obj files. I was testing my code with the stanford bunny obj file, which I imported into a GeometryBasics Mesh usi…

---

## [Suggestion: abstraction for integrated GPUs?](https://discourse.julialang.org/t/suggestion-abstraction-for-integrated-gpus/117061)

<div class="topic-metadata">

**Author:** [@bremez](https://discourse.julialang.org/u/bremez)\
**Replies:** 7\
**Last updated:** [July 16, 2024, 7:06am UTC](https://discourse.julialang.org/t/suggestion-abstraction-for-integrated-gpus/117061 "2024-07-16T07:06:16Z")

</div>

I have had the following thought: many people do not have regular access to HPC or high-end GPUs (where Nvidia seems most popular), and/or prioritize the benefit of interactive sessions on their personal laptops and low …

---

## [Metal Kernel 3D indices](https://discourse.julialang.org/t/metal-kernel-3d-indices/116429)

<div class="topic-metadata">

**Author:** [@trasor](https://discourse.julialang.org/u/trasor)\
**Replies:** 4\
**Last updated:** [July 14, 2024, 6:47pm UTC](https://discourse.julialang.org/t/metal-kernel-3d-indices/116429 "2024-07-14T18:47:19Z")

</div>

Hello together, i try to write a metal kernel that do some operations on 3D arrays like: function vadd!( nz::Int64,ny::Int64,nx::Int64, a::MtlDeviceArray{Float32, 3, 1}, b::MtlDeviceArray{Float32, 3, 1}, c::MtlDeviceArr…

---

## [Getting started with Metal.jl](https://discourse.julialang.org/t/getting-started-with-metal-jl/116309)

<div class="topic-metadata">

**Author:** [@marianoarnaiz](https://discourse.julialang.org/u/marianoarnaiz)\
**Replies:** 1\
**Last updated:** [June 28, 2024, 10:48am UTC](https://discourse.julialang.org/t/getting-started-with-metal-jl/116309 "2024-06-28T10:48:11Z")

</div>

Hi everyone. So, I have never worked with GPU, I have a M1 Mac and I am trying to get some codes of mine to run faster. I have a code that I know very well and I thought it might be a good exercise to translate it to Me…

---

## [Flux with Metal backend slower than on CPU (Apple M2 Pro)](https://discourse.julialang.org/t/flux-with-metal-backend-slower-than-on-cpu-apple-m2-pro/113080)

<div class="topic-metadata">

**Author:** [@pat-alt](https://discourse.julialang.org/u/pat-alt)\
**Replies:** 5\
**Last updated:** [April 18, 2024, 9:40am UTC](https://discourse.julialang.org/t/flux-with-metal-backend-slower-than-on-cpu-apple-m2-pro/113080 "2024-04-18T09:40:57Z")

</div>

This might be a very silly question (so apologies in advance!), but I have found little discussion on this topic anywhere. I have yet to actually make of my Mac’s M2 GPU using Flux with the Metal.jl backend. But every t…

---

## [Newbie question regarding GPU with metal.jl](https://discourse.julialang.org/t/newbie-question-regarding-gpu-with-metal-jl/112850)

<div class="topic-metadata">

**Author:** [@cloner0110](https://discourse.julialang.org/u/cloner0110)\
**Replies:** 0\
**Last updated:** [April 11, 2024, 10:39pm UTC](https://discourse.julialang.org/t/newbie-question-regarding-gpu-with-metal-jl/112850 "2024-04-11T22:39:14Z")

</div>

Hi Everyone, Im a bit new to julia and GPU programming, Im about to solve a system of equation using metal.jl on a GPU and see the performance, as a starting point, does any of you have any suggestions? Cheers,

---

## [Is it possible to diagonalize matrices with M-series Apple Silicon GPUs?](https://discourse.julialang.org/t/is-it-possible-to-diagonalize-matrices-with-m-series-apple-silicon-gpus/106075)

<div class="topic-metadata">

**Author:** [@mdyuki](https://discourse.julialang.org/u/mdyuki)\
**Replies:** 10\
**Last updated:** [January 12, 2024, 3:39pm UTC](https://discourse.julialang.org/t/is-it-possible-to-diagonalize-matrices-with-m-series-apple-silicon-gpus/106075 "2024-01-12T15:39:22Z")

</div>

Hello. I have to diagonalize Hermtian matrices with large (e.g. 10k X 10k) dimensions for many times. To reduce computing time, I am considering using GPUs. Since I have a Mac mini with M1 chip now, I would like to try …

---

## [Error with Flux.update! with Metal gpu backend](https://discourse.julialang.org/t/error-with-flux-update-with-metal-gpu-backend/102964)

<div class="topic-metadata">

**Author:** [@Bill\_Holmes](https://discourse.julialang.org/u/Bill_Holmes)\
**Replies:** 1\
**Last updated:** [August 19, 2023, 2:50pm UTC](https://discourse.julialang.org/t/error-with-flux-update-with-metal-gpu-backend/102964 "2023-08-19T14:50:54Z")

</div>

I’m trying to get Flux up and running with Metal as the gpu backend. The documentation for this is great, but I keep running into an issue. I’ve distilled the issue into a very simple FFNN. The code below, defines a simp…

---

## [Simple matrix multiplication using MtlArray kills REPL](https://discourse.julialang.org/t/simple-matrix-multiplication-using-mtlarray-kills-repl/102905)

<div class="topic-metadata">

**Author:** [@Bill\_Holmes](https://discourse.julialang.org/u/Bill_Holmes)\
**Replies:** 4\
**Last updated:** [August 17, 2023, 2:44pm UTC](https://discourse.julialang.org/t/simple-matrix-multiplication-using-mtlarray-kills-repl/102905 "2023-08-17T14:44:25Z")

</div>

First off, for those working on the development of Metal.jl, if you read this, thank you! Now for my issue / bug. In trying to do something with metal, I ran into the following reproducible problem. Consider the simple …

---

## [Launching a Metal kernel from a thread](https://discourse.julialang.org/t/launching-a-metal-kernel-from-a-thread/102010)

<div class="topic-metadata">

**Author:** [@f.ij](https://discourse.julialang.org/u/f.ij)\
**Replies:** 3\
**Last updated:** [July 24, 2023, 1:45pm UTC](https://discourse.julialang.org/t/launching-a-metal-kernel-from-a-thread/102010 "2023-07-24T13:45:40Z")

</div>

I’m trying to get into some basic GPU programming to run some analysis on data that would be unfeasible to run on the CPU. I have written a GPU kernel to compute the correlation length function of some data. I call this…

---

## [What is the best machine learning framework in Julia that works with Metal.jl?](https://discourse.julialang.org/t/what-is-the-best-machine-learning-framework-in-julia-that-works-with-metal-jl/100351)

<div class="topic-metadata">

**Author:** [@janrpeters](https://discourse.julialang.org/u/janrpeters)\
**Replies:** 2\
**Last updated:** [June 16, 2023, 6:53am UTC](https://discourse.julialang.org/t/what-is-the-best-machine-learning-framework-in-julia-that-works-with-metal-jl/100351 "2023-06-16T06:53:57Z")

</div>

What is the best machine learning framework in Julia that works with Metal.jl?

---

## [Render Pipeline in Metal.jl](https://discourse.julialang.org/t/render-pipeline-in-metal-jl/97847)

<div class="topic-metadata">

**Author:** [@dchang10](https://discourse.julialang.org/u/dchang10)\
**Replies:** 9\
**Last updated:** [April 30, 2023, 5:07pm UTC](https://discourse.julialang.org/t/render-pipeline-in-metal-jl/97847 "2023-04-30T17:07:49Z")

</div>

I’m currently trying to set up a render pipeline with Metal.jl by defining a vertex shader, rasterizer and fragment shader, but am not sure how to go about it. Is there an example or description of how this is done with …

---

## [Metal throws ERROR: Exception handler triggered on unmanaged thread](https://discourse.julialang.org/t/metal-throws-error-exception-handler-triggered-on-unmanaged-thread/97727)

<div class="topic-metadata">

**Author:** [@pitsianis](https://discourse.julialang.org/u/pitsianis)\
**Replies:** 2\
**Last updated:** [April 21, 2023, 3:07pm UTC](https://discourse.julialang.org/t/metal-throws-error-exception-handler-triggered-on-unmanaged-thread/97727 "2023-04-21T15:07:49Z")

</div>

This is my very first try to use the M2 GPU using the 1.9-rc2 aa64. The following implements a straight forward imperative bitonic sort. However, when running from the REPL, from time to time, it throws ERROR: Exception…
