C.W.K.
Stream
Lesson 06 of 06 · published

솔직한 평가 — 오늘 시점 MLX 가 뭐가 아닌지

~16 min · honest, limits, linalg-gap

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

꺾이지 않는 목록

이 quest 가 다섯 트랙을 MLX 파는 데 썼어. 이 레슨은 보정하는 반대편 — MLX 가 잘 안 하는 거, 누락된 거, 2026-05 기준 여전히 거친 거. 현실적 기대 설정하고 어떤 한계가 닫힐 가능성 있는지 vs 구조적인지 알려고 사용.

linalg 갭

MLX 의 mx.linalg 모듈이 NumPy 의 거 또는 PyTorch 의 거보다 훨씬 작아. mlx 0.31.x 기준 주목할 만한 부재:

  • det — 행렬 determinant. 그래, 누락. 필요하면 LU 분해의 대각선 또는 SVD eigenvalue 통해 계산.
  • lstsq — least-squares solver. Normal equation 의 solve 또는 SVD pseudoinverse 통한 우회.
  • matrix_rank, matrix_exp, slogdet, cond — 수치 분석에 쓸 convenience 함수. MLX core 에 없음.
  • 기본 decomposition (cholesky, qr, svd, lu, eig) 은 MLX 에 있음. 뼈는 있음; convenience layer 가 없음.

작업이 ML 학습 너머 무거운 선형 대수 포함하면, MLX 가 충분치 않을 수 있어. NumPy + 네 CPU 가 파이프라인의 그 부분에 맞는 도구일 수 있어.

Codebase 보다 lag 하는 문서

MLX 의 문서가 정확하지만 불완전. ml-explore.github.io/mlx/ 의 공식 문서가 대부분 API 덮지만 최신 릴리스 보다 주에서 달 lag. Frontier feature 에 대해 진실이 source code (mlx-lm 의 GitHub repo) 와 릴리스 노트 — 문서 아님.

여전히 초기인 분산 학습

JACCL (prod.lesson6 에서 짧게 다룸) 이 Thunderbolt-연결 Mac 들에 걸친 MLX 분산 학습용 활동 연구 영역. 2026-05 기준 macOS 26.3+ 전용이고 PyTorch 분산-학습 stack 에 아직 drop-in 아냐. 오늘 여러 머신에 걸쳐 학습한다면 NVIDIA 의 PyTorch + DeepSpeed 가 여전히 실용적 답.

불완전한 CUDA backend

v0.27 부터 mlx 가 cross-platform 추론용 Linux 의 CUDA backend 가짐. 2026-05 기준 functional 이지만 coverage 와 성능에서 Apple Silicon path 뒤. MLX-shape 코드를 Mac 아닌 어딘가에서 돌려야 할 때 사용, native Apple Silicon 경험과 parity 기대하지 마.

PyTorch 보다 작은 라이브러리 ecosystem

PyTorch ecosystem 이 수천 third-party 라이브러리 가짐 — vision, audio, RL, robotics, 과학 컴퓨팅 — MLX 엔 단순히 존재 안 함. 일부 갭은 MLX-native 패키지 (mlx-vlm, mlx-audio) 가 채움; 다른 거는 hybrid 파이프라인에서 MLX 옆에 NumPy/PyTorch 사용 요구.

이 모든 거에도 불구하고 MLX 가 뭔가

맞는 요약 — MLX 는 Apple Silicon 의 LLM 서빙과 fine-tuning 에 가장 좋은 framework, Apple Silicon 의 일반 ML 연구에 신뢰할 만한 framework. 무거운 수치 분석, 다중-머신 분산 학습, 또는 PyTorch ecosystem 라이브러리의 긴 꼬리 의존하는 사용 케이스엔 아직 맞는 framework 아냐. 선이 어디 있는지 안다는 건 강한 곳에 MLX 손 뻗고 안 그런 곳에 다른 거 손 뻗는다는 뜻 — 어느 쪽이든 혼란스러운 기대 없이.

Code

누락된 det 의 우회·python
# mx.linalg.det doesn't exist in mlx 0.31.x.
# Workaround via LU decomposition: det(A) = product of diagonal of U
import mlx.core as mx
import math

def det(A):
    # mlx.core.linalg.lu returns (P, L, U)
    P, L, U = mx.linalg.lu(A, stream=mx.cpu)
    diag = U.diagonal(0)
    # Sign from permutation parity
    return float(mx.prod(diag).item())

A = mx.array([[4.0, 2.0], [3.0, 1.0]])
print("det(A) =", det(A))
# Sanity: 4*1 - 2*3 = -2 (sign may differ depending on permutation)

External links

Exercise

전에 했던 수치-분석 워크플로 식별 — determinant, least-squares, 비-대칭 행렬의 eigenvalue 등 포함하는 무엇이든. 어떤 building block 이 MLX 에 존재하는지 vs 우회 필요한지 찾아. 자기 specific 워크플로엔 MLX, NumPy, 또는 hybrid 사용? 선택 설명 두 문장.

Progress

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

댓글 0

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

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