dorjeduck/llm.mojo
port of Andrjey Karpathy's llm.c to Mojo
해결하는 문제
Mojo 프로그래밍 언어가 원시 포인터와 수동 메모리 관리를 사용하는 저수준 C 스타일의 AI 학습 코드를 구현하면서도, C와 동등하거나 그 이상의 성능을 달성할 수 있음을 보여줍니다.
작동 방식
이 프로젝트는 안드레이 카르파티의 llm.c (특히 train_gpt2.c 구현)의 이전 버전을 직접 Mojo로 이식한 것입니다. GPT-2 학습 프로세스를 Mojo로 구현하여 TinyShakespeare와 같은 데이터셋에서 모델을 학습할 수 있습니다.
대상 사용자
Mojo의 저수준 기계학습 구현에서 C와의 성능 차이에 관심이 있는 개발자 및 연구자.
주요 특징
- 고성능: M2 맥북 프로에서의 벤치마크 결과, Mojo 구현은 OpenMP를 지원하는 C 버전(128 tok/s)보다 높은 처리량(150 tok/s)을 달성했습니다.
- 저수준 제어: 원본 C 프로젝트를 모방하기 위해 원시 포인터와 수동 메모리 관리를 구현했습니다.
- 검증: 포트된
test_gpt2.c버전을 포함하여 포트된 기능의 정확성을 확인합니다.
관련
- Dispatch
- Dispatch
- 프로젝트
- 프로젝트
- 프로젝트