Mojo 알아보기

반디·2023년 10월 5일
0

개발기

목록 보기
16/16

Mojo란?

AI를 위한 새로운 프로그래밍 언어로, MLIR을 이용하여 병렬 처리를 수행함으로써 Python 보다 최대 약 68,000배 빠른 속도로 동작하는 언어라고 합니다.
(최근 포스트를 보면, 우연히 68,000배 속도 개선을 달성하였다고 하네요.)
최근 llama2를 mojo로 구현한 버전도 공개하였습니다.

MLIR 이란?

속도 개선에 핵심요소인 MLIR은 구글에서 개발한 컴파일러 인프라로 특정 도메인에 특화된 컴파일러를 만들 수 있다는 것이 강점입니다. 따라서, CPU나 GPU 이외의 하드웨어에 대해서도 특화된 컴파일러를 구성할 수 있게 됩니다.

Python \subset Mojo

Mojo가 AI 분야에서 가지는 또 하나의 강점은 Python의 생태계를 그대로 이용할 수 있다는 것입니다. 다음과 같이 Python의 라이브러리를 쉽게 이용 가능하므로 기존 AI 모델들도 빠르게 확장할 수 있습니다.

from python import Python

let np = Python.import_module("numpy")

ar = np.arange(15).reshape(3, 5)
print(ar)
print(ar.shape)

참고문헌
Mojo🔥: AI를 위한 새로운 프로그래밍 언어
Introduction To Compilers - GeeksforGeeks
MLIR
Python에 대하여, Python은 어떻게 동작하는가? Python의 장단점
Why Python is Slow: Looking Under the Hood | Pythonic Perambulations

profile
꾸준히!

0개의 댓글