Development/AI

속도가 파이썬의 35000배? MOJO(모조)! 괴물 개발 언어가 나왔다.

dokevee 2023. 5. 13. 01:15

오늘날 급속도로 발전하는 인공지능(AI) 프로그래밍의 세계에서 최적의 성능과 효율성을 추구하는 것은 아주 중요합니다.

AI를 훈련 시켜본 사람은 알겠지만 훈련을 시키는데 몇날 며칠이 걸리는게 다반사죠.

 

이런 와중에 'Mojo'라는 혁신적인 프로그래밍 언어가 등장했습니다.

Mojo사이트의 블로그를 보고 간단히 요약 정리하였습니다.

 

Swift와 LLVM의 창시자인 Chris Lattner의 지휘 아래 개발된 Mojo는 AI 프로그래밍 언어의 최전선에서 활약 할 수 있는 여러가지 특징들을 도입했다고 합니다.

 

Mojo의 핵심 설계 철학은 다양한 AI 하드웨어 아키텍처에서의 원활한 확장성을 가능하게 하는 Multi-Level Intermediate Representation(MLIR)의 활용에 있다고 합니다.

MLIR을 능숙하게 활용함으로써, Mojo는 복잡하고 오류가 발생하기 쉬운 하드웨어 특정 코드 최적화의 필요성을 없애고, 개발자들이 CUDA를 실행하는 GPU를 포함한 AI 하드웨어의 모든 잠재력을 활용하게 한다고 하네요.

 

Mojo는 Python의 슈퍼셋으로서, AI 커뮤니티 내에서 Python 언어의 널리 쓰이는 점과 개발자들의 친숙함을 활용합니다.

파이썬을 해보신 분들은 편할 듯합니다.

그리고 C, C++도 지원을 한다니 C,C++ 개발자들에게도 희소식이 아닐 수 없습니다.

Mojo는 Python의 구문을 확장함으로써, 표현력과 성능 모두 강화가 되었다고 합니다.

 

 

또한, Python 생태계와의 원활한 상호 운용성을 강조하고 있습니다.

 

또한, Rust와 C++에서 영감을 받은 고급 메모리 관리 기법을 도입하여, 개발자들에게 메모리 할당 및 해제에 대한 세밀한 제어를 부여합니다.

현대 하드웨어 아키텍처가 제공하는 방대한 연산력을 인식하고, Mojo는 내장된 병렬화 메커니즘을 통해 멀티 스레딩과 분산 처리를 활용합니다.

(기존 Python의 경우, 멀티 스레딩이 불가능하였는데 희소식이네요.)

 

그리고 하이라이트입니다.

Python과 비교 시, 무려 14배 빠르며, 특정 경우에서는 하드웨어를 최대한 활용할 수 있기 때문에 Python보다 최대 35,000배 빠르게 동작할 수 있었습니다.

 

결론적으로, AI최전선에서는 차츰 Mojo가 Python을 대체하지 않을까 생각됩니다.

무엇보다 Python과 호환성을 강조하고 있으니까요.

 

홈페이지에 Playground도 있으니 관심있는 분들은 거기에서 테스트를 해도 될 듯합니다.

 

더 자세한 내용은 아래 홈페이지를 방문하시면 됩니다.

 

Modular Docs - Mojo🔥

 

이상 글을 마칩니다.