본문 바로가기
C.W.K.
Stream
Lesson 06 of 06 · published

MLX의 미래 — JACCL, Neural Accelerator, CUDA 백엔드

~14 min · future, jaccl, m5, cuda

Level 0호기심
0 XP0/51 lessons0/15 achievements
0/100 XP to next level100 XP to go0% complete

2026년 5월에 보이는 MLX의 방향

앞선 레슨들은 지금 쓸 수 있는 MLX를 다뤘어. 마지막 레슨에서는 앞으로 1~2년 동안 지켜볼 만한 세 갈래를 전망해. 무엇이 실제 기능으로 들어올 가능성이 있는지 알면 오늘의 배포 결정을 더 잘 내릴 수 있고, 어디에 학습 시간을 투자할지도 고를 수 있어.

JACCL — Thunderbolt로 연결한 Mac의 분산 추론

JACCL(‘재칼’이라고 읽어)은 Thunderbolt 5 케이블로 이은 Mac들을 위한 mx.distributed 통신 백엔드야. Apple이 macOS 26.2에 넣은 Thunderbolt RDMA 위에서 돌아가고, MLX 문서에 따르면 지연 시간이 예전 ring 백엔드보다 열 배쯤 낮아. 여러 대에 걸친 텐서 병렬이 가능해지는 것도 이 덕분이야. 모델의 층마다 계산을 여러 Mac이 나눠 맡으니, 토큰 하나를 만들 때도 층마다 서로 결과를 주고받아야 하거든.

JACCL은 macOS 26.2부터 동작해(MLX v0.30.1, 2025년 12월). 그리고 MLX v0.30.6부터는 macOS 26.3 이상에서 대역폭이 훨씬 넓어졌어. 까다로운 건 API가 아니라 준비 과정이야. RDMA는 Mac마다 macOS 복구 모드로 들어가 rdma_ctl enable로 켜야 해. MLX 문서에 따르면 이 작업은 sudo 권한이 있어도 원격으로는 못 해. 연결도 모든 Mac 쌍을 케이블로 직접 잇는 완전 연결만 받아. mlx-lm 쪽은 이미 준비돼 있어. mlx-lm v0.30.0에 모델 병렬 생성이 들어오면서 mlx.launch --backend jaccl로 띄우는 예제가 생겼고, v0.30.6부터는 서버에서도 분산 추론을 해. mlx-lm은 모델 계열이 텐서 병렬을 지원하면 층 단위로, 지원하지 않으면 단계 단위로 모델을 나눠. 그러니 내 모델을 잘 나눌 수 있는지는 mlx-lm 릴리스 안내에서 모델 계열별로 확인해.

묶어서 얻는 것과 못 얻는 것 — 512GB Studio 두 대를 케이블로 이으면 한 대에는 안 들어가는 모델도 올릴 수 있어. 이걸로 풀리는 건 ‘들어가느냐’ 하나야. 쓸 만하냐는 다른 문제고, 묶는다고 풀리지 않아. 토큰을 하나 만들 때마다 모델의 활성 가중치를 메모리에서 읽어야 하는 건 그대로인데, 모델을 여러 대에 나누면 케이블 너머 다른 Mac을 기다리는 시간까지 붙어. 층마다 나누면 속도를 어느 정도 되찾을 수 있지만, 단계로 나누면 대개 들어가게 해 주는 데서 그쳐. 답 하나를 만들 때도 모든 단계를 차례로 거쳐야 하니까. Apple의 M5 벤치마크가 그 밑바탕을 정확히 짚어. 첫 토큰이 나오기까지의 시간은 계산량이, 토큰 생성은 메모리 대역폭이 좌우해. 모델을 올리는 것과 쓰는 것은 달라.

M5 Neural Accelerator — 다음 하드웨어 단계

M5 계열 GPU는 코어마다 Neural Accelerator를 하나씩 품고 있어. 머신러닝이 시간 대부분을 쓰는 행렬 곱셈을 전담하는 하드웨어야. MLX는 Metal 4가 새로 들여온 텐서 연산과 Metal Performance Primitives를 거쳐 여기에 닿아. MLX의 M5 지원(v0.30.0)에 macOS 26.2 이상이 필요한 것도 그래서야. 다만 들어가는 길이 MLX 하나뿐인 건 아니야. Apple 발표를 보면 Core ML, Metal Performance Shaders, Metal 4로 만든 앱은 따로 손대지 않아도 빨라져. 개발자가 Metal 4의 Tensor API로 가속기를 직접 다루는 길도 열려 있어. MLX가 주는 건 연구하고 서빙하던 그 Python 코드에서 이 가속기를 그대로 쓰는 길이야.

발표 숫자는 나눠서 읽어. Apple이 M5에서 MLX로 잰 결과를 보면 첫 토큰이 나오기까지의 시간이 M4보다 최대 4배 빨라. 프롬프트를 처리하는 이 단계는 계산량이 좌우해서 행렬 가속기가 가장 크게 도와. 답을 생성하는 단계는 메모리 대역폭이 좌우하는데, 같은 벤치마크에서 이쪽은 M4보다 19~27% 빨랐어. M5의 대역폭이 초당 153GB로 M4의 120GB보다 28% 넓은 것과 맞아떨어지지. 새 행렬 하드웨어 덕에 프롬프트는 빨리 읽지만, 답은 여전히 메모리를 기다려.

CUDA 백엔드 — 여러 플랫폼을 위한 MLX

MLX는 v0.27부터 Linux용 CUDA 백엔드를 제공해. 2026년 5월 기준 일부 연산이 빠져 있고 성능도 Apple Silicon 고유 경로보다 뒤처지지만, 실제로 존재하며 버전마다 나아지고 있어. 의미는 생각보다 커. 같은 MLX식 코드를 Apple Silicon과 NVIDIA Linux 기기에서 자연스럽게 돌릴 수 있다면 MLX는 ‘Mac 프레임워크’를 넘어 ‘가진 하드웨어에서 돌아가는 프레임워크’가 돼.

금방 완성될 일은 아니야. JAX도 여러 백엔드를 제공한 지 몇 년이 지났지만 백엔드별 지원 차이가 여전히 남아 있어. 그래도 방향은 분명해. MLX API는 여러 백엔드에서 쓸 가치가 있을 만큼 좋고, CUDA 작업은 그 방향으로 내디딘 첫 구체적인 발걸음이야.

세 갈래가 모이는 곳

2026년 5월의 MLX는 머신러닝 연구와 LLM 서빙, 파인튜닝을 위해 Apple Silicon에서 먼저 고르는 프레임워크야. 위 기술이 성숙할 현실적인 시점인 2027년 5월 무렵에는 다음 자리를 노릴 수 있어.

  • Mac 한 대부터 JACCL로 이은 Thunderbolt 묶음까지, Apple Silicon에 배포할 때 먼저 고르는 프레임워크. 묶음이라면 모델이 올라가는지보다 쓸 만한지를 먼저 따져야 해.
  • Core ML이나 Metal 4를 대신하지는 않지만, 연구 코드에서 M5 계열 Neural Accelerator로 곧장 들어가는 길.
  • Apple Silicon과 NVIDIA 양쪽에서 돌아야 하는 코드의 믿을 만한 여러 플랫폼 선택지로서, 오늘 PyTorch MPS가 맡는 일부 역할을 대체하는 프레임워크.

어느 것도 보장되지는 않아. 하지만 셋 다 미리 설계를 고려해도 막연한 추측이라 부르기 어려울 만큼 모습이 드러났어. ml-explore/mlx와 ml-explore/mlx-lm의 릴리스 안내를 지켜봐. 이 변화들은 거기에 가장 먼저 나타날 거야.

Code

지켜볼 저장소의 릴리스 구독하기·bash
# Open these in your browser and click Watch → Releases only.
# This is the right granularity for tracking the future of MLX.

open "https://github.com/ml-explore/mlx/releases"
open "https://github.com/ml-explore/mlx-lm/releases"
open "https://github.com/ml-explore/mlx-vlm/releases"

# JACCL development surfaces in the main mlx repo's release notes;
# distributed generation over it shows up in mlx-lm's release notes;
# M5 Neural Accelerator support landed in mlx v0.30.0 and gets tuned per release;
# CUDA backend progress appears in mlx release notes per release.

External links

Exercise

ml-explore/mlx와 ml-explore/mlx-lm의 GitHub 릴리스를 ‘Releases only’ 알림으로 구독해. 두 저장소의 최신 릴리스 안내를 훑어보고, 몰랐던 새 기능이나 코드에 영향을 주는 폐기 예정 항목, 성능 개선 가운데 하나를 골라. 무엇을 발견했고 현재 만드는 것에 어떤 영향을 주는지 두 문장으로 적어.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인 — 댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.