Lightstorm: MLIR을 사용한 최소한의 Ruby 컴파일러로 성능 향상

2024-12-31

DragonRuby 팀은 크로스 플랫폼 게임 엔진의 성능 향상을 목표로 Lightstorm이라는 최소한의 Ruby 컴파일러를 개발했습니다. MLIR을 활용하여 mruby 가상 머신의 바이트 코드를 C 코드로 변환함으로써 VM 인터프리터 루프 내의 로드/스토어 및 분기 연산을 제거하여 성능을 최적화합니다. 벤치마크 결과에 따르면 성능이 1%에서 1200%까지 향상되었으며, 실행 시간과 사이클 수는 평균 약 30% 감소했습니다. 현재는 Ruby의 일부만 지원하지만, 이 프로젝트는 성능 향상을 위한 Ruby 코드의 사전 컴파일 가능성을 입증합니다. 향후 계획에는 엔진의 중요한 C 구성 요소를 컴파일된 Ruby 코드로 대체하는 것이 포함됩니다.