최근, 친한 지인이 Rust를 이용해 Hodu라는 ML 프레임워크를 만들었습니다.
저도 비슷한 프로젝트를 진행하던 경험이 있어 ML 프레임워크에 관심 있는 분들이 봐보시면 좋은 자료가 되리라 생각되어 공유해봅니다

주요 특징

  • no_std 지원: 마이크로컨트롤러에서도 동작 가능한 경량 구조
  • 정적 그래프 컴파일: 한 번 컴파일된 그래프를 임베디드 디바이스에 저장해 손쉽게 추론 가능
  • 이중 실행 모드:
    • 프로토타이핑: 동적 그래프 기반 실험
    • 프로덕션 배포: 정적 그래프 기반 안정적 실행
  • 고성능 백엔드
    • XLA 백엔드: 그래프 최적화 및 JIT 컴파일을 통한 최고 성능
    • HODU 네이티브 백엔드: 순수 Rust 구현으로 플랫폼 제약 없이 실행
  • 직관적 API: PyTorch/TensorFlow 스타일
  • 메모리 안전성 보장: Rust의 소유권 시스템으로 메모리 누수, 데이터 레이스 완전 차단
  • 다중 디바이스 지원: CPU, CUDA(NVIDIA GPU), Metal(Apple GPU)

Hodu는 Rust로 ML을 공부하며 지인이 공부용으로 시작했는 프로젝트인 maidnx에세 시작하여 현재까지 왔다고 합니다.

xla 기능은 빌드 시 LLVM/Clang + 8GB+ RAM + 20GB+ 디스크가 필요하고 빌드 시간도 꽤 걸립니다.
CUDA GPU 지원은 아직 완전히 구현되지 않았고, SIMD 최적화도 예정되어 있습니다.
현재 프로덕션 환경에서의 사용은 권장하지 않으며, 활발하게 개발 중이어, 실험적이거나 불완전한 기능들이 있습니다.