Ubuntu 패키지 속도 90% 향상: 재구축과 메모리 할당의 이야기
2025-03-19

이 글에서는 Ubuntu에서 사용하는 jq 소스 패키지를 재구축하여 놀라운 90%의 성능 향상을 달성한 방법을 자세히 설명합니다. 저자는 500MB GeoJSON 파일을 사용하여 벤치마킹을 수행했습니다. 패키지를 단순히 재빌드하는 것만으로도 약간의 속도 향상을 확인할 수 있었습니다. 더 나아가 clang 컴파일러와 더 나은 옵션(-O3, -flto, -DNDEBUG)을 사용하여 20%의 향상을 달성했습니다. TCMalloc 메모리 할당자로 전환하여 성능을 추가로 40% 향상시켰습니다. 마지막으로 mimalloc 메모리 할당자를 사용하여 동적으로 로드하거나 재빌드에 통합하는 경우 놀라운 90%의 속도 향상을 달성했습니다. mimalloc을 사용하여 재컴파일된 jq는 다양한 테스트에서 기본 Ubuntu 패키지보다 거의 두 배 빠른 속도를 달성했습니다.