rui314/mold
Rust 기반 고성능 링커 mold, lld보다 4.9배 빠르다
원제 rui314/mold
스타 17,523당일 +168Rust
Key Point
대규모 프로젝트 빌드 시간을 획기적으로 단축할 수 있는 성숙한 도구로, 특히 C++·Rust 개발자의 개발 생산성을 크게 높일 수 있다.
핵심 요약
- mold는 Unix 링커의 고성능 대체품으로, Blender·Chromium·TensorFlow 같은 대규모 프로젝트 링킹을 4.9배 빠르게(lld 대비 중앙값) 처리한다.
- 2026년 8월 벤치마크에서 wild 링커보다는 1.9배 빠르며, AMD Threadripper와 Apple M1 Ultra 양쪽 플랫폼에서 일관되게 우수한 성능을 보인다.
- LLVM lld 원개발자가 아키텍처 한계를 극복하기 위해 Rust로 새로 작성했으며, 2021년부터 프로덕션 환경에서 운영 중이다.
- x86-64·ARM·RISC-V·PowerPC·s390x·LoongArch·SPARC64·m68k·SH-4 등 9개 아키텍처를 지원하고, 대규모 오픈소스 프로젝트의 기본 링커로 채택되었다.
- 링킹 성능이 빌드 시간에 직접 영향을 미치는데, 특히 디버그-수정-재빌드 사이클에서 시간 절약이 두드러진다.
- mold의 빠른 속도는 광범위한 병렬 처리와 효율적인 자료구조·알고리즘에서 비롯되며, ASPLOS 2027 논문에 상세히 기술되어 있다.
- Clang은 `-fuse-ld=mold`, 최신 GCC는 `-fuse-ld=mold`, 구형 GCC는 `-B/usr/local/libexec/mold` 옵션으로 지정 가능하다.
- Rust 프로젝트는 `.cargo/config.toml`에 설정을 추가하면 mold를 사용할 수 있으며, `mold -run` 명령으로 ld 호출을 자동 전환하는 기능도 있다.
- 2020년부터 오픈 개발되었고 140명 이상 기여자가 참여했으며, 모든 지원 아키텍처에서 CI 테스트와 Gentoo Linux 약 19,000개 패키지 빌드 검증을 거친다.
- GitHub Actions 통합, 온라인 매뉴얼, `.comment` 섹션 식별자 등 개발자 편의 기능을 제공하며, GitHub 후원을 통해 유지보수가 이루어진다.
저장소 보기 ↗github.com