AI 요약
Rui Ueyama가 개발한 'mold'는 링킹 파이프라인 전체에 데이터 병렬 처리를 체계적으로 적용한 Unix/Linux 링커다. 기존 링커들은 심볼 해석과 아카이브 처리의 얽힘 등 아키텍처 제약으로 인해 병렬성을 충분히 활용하지 못했는데, mold는 이를 분리하는 클린슬레이트 설계로 한계를 극복했다. 대규모 실제 프로그램에서 멀티기가바이트 디버그 바이너리를 수 초 이내(종종 1초 미만)에 링크하며, 최신 lld 링커보다 2.4~16.1배, 기존 GNU ld보다 최대 112배 빠른 성능을 보인다. 절제 연구(ablation study) 결과 특정 단일 최적화가 지배적이지 않으며 모든 패스의 병렬화가 누적적으로 속도 향상에 기여하는 것으로 나타났다.
핵심 포인트
- ASPLOS 2027에 채택된 논문으로, 15페이지·3개 그림·10개 테이블로 구성
- lld 대비 2.4~16.1배, GNU ld 대비 최대 112배 링크 속도 향상
- 기존 링커의 확장을 막는 심볼 해석과 아카이브 처리의 결합 문제를 분리 설계로 해결
- 멀티기가바이트 디버그 바이너리를 수 초 이내(종종 1초 미만)에 링크
향후 전망
- 대규모 C++ 프로그램의 편집-컴파일-디버그 사이클 병목 해소에 크게 기여할 전망
- 데이터 병렬 링킹 설계가 향후 링커 아키텍처의 새로운 표준 방향을 제시할 가능성
출처:Hacker News (arXiv)
