Julia access to Apple GPU with MLX, and or Metal Performance Shaders (MPS)?

Is there any on-going effort to provide a Julia interface to the following?

  • Metal Performance Shaders (MPS) is a PyTorch framework backend for GPU training acceleration, providing scripts and capabilities to set up and run operations on Mac.

  • MLX is an array framework for machine learning research on Apple silicon, by Apple machine learning research. MLX provides FFTs, Linear Algebra operations Cholesky, inv, qr, svd, and includes a list of of examples:

Or calling them via their Python interfaces using PythonCall.jl is the only (good-enough?) way? MLX has a C API MLX-C

Apologies if this has been discussed already, but I could not locate any related information here.

2 Likes