최근 수정 시각 : 2025-03-26 21:09:17

MLX

<bgcolor=#fff,#121212>
파일:MLX logo.png파일:MLX logo dark.png

<colbgcolor=#333><colcolor=#fff> 개발 <colcolor=#333,#fff>Apple
최신 버전 0.24.1
2025년 3월 24일 업데이트
공개일 2023년 12월 6일
링크 파일:홈페이지 아이콘.svg 파일:GitHub 아이콘.svg파일:GitHub 아이콘 화이트.svg

1. 개요2. 상세3. 특징4. 역사5. 참고 자료

1. 개요

Apple Silicon을 위한 딥러닝 프레임워크.

2. 상세

MLX는 Apple에서 개발했으며 Apple Silicon을 위한 첫 딥러닝 프레임워크이다. 공개 당일 3K star를 달성하며 큰 호응을 얻었다.

3. 특징

MLX는 NumPy, PyTorch, Jax 그리고 ArrayFire로부터 영향을 받았다.
  • 익숙한 API
    MLX는 Python과 Numpy에 밀접하다. 복잡한 모델도 간단히 구축하기 위해 PyTorch와 비슷한 패키지를 제공하고 있다.
  • 구성 가능한 함수 변환
    MLX는 자동 미분, 자동 벡터화 그리고 계산 그래프 최적화를 위한 구성 가능한 함수 변환을 갖고 있다.
  • 지연 계산
    MLX에서 계산은 지연 계산이다. Arrays는 오직 필요할 때만 구체화된다.
  • 동적 그래프 구축
    MLX에서 계산 그래프는 동적으로 만들어진다. 함수 인수의 shape를 변경해도 컴파일 속도가 느려지지 않으며 디버깅은 간단하고 직관적이다.
  • 다중 장치
    연산은 장치가 지원하면 수행할 수 있다. 타 프레임워크처럼 CPUGPU에서 연산이 가능하다.
  • 통합 메모리
    타 프레임워크 대비 MLX의 차별점은 통합 메모리 모델이다. MLX에서 Arrays는 공유 메모리에 상주한다.[1] 따라서 MLX arrays 연산은 기존 프레임워크와 달리 데이터의 이동 없이, 지원되는 아무 장치 유형에서 수행될 수 있다.

4. 역사

2023년 12월 6일 MLX 오픈 소스가 GitHub에서 공개되었다.[2]

5. 참고 자료


[1] 애플 실리콘에서는 칩에 장착된 RAM 용량 전부를 칩의 연산 장치들이 공유하는데 이를 공유 메모리라고 부른다. 보통의 컴퓨터 구조에서는 CPU와 GPU가 각자 별도의 메모리를 사용하기 때문에 해당 장치의 메모리로 데이터가 이동해야 연산할 수 있다.[2] 2020년 AppleWWDC20에서 Mac의 Apple Silicon 이주를 발표하고 난 뒤, 3년 동안 PyTorch를 제외하면 그 위에서 운용하기 위한 딥러닝 프레임워크의 진전이 없었다.