Linux From Scratch - Version 12.4

4. 준비 마치기

이전
환경 설정

처음으로
상위

다음
테스트 관련 사항

SBU 단위

많은 사람들이 각 패키지를 컴파일하고 설치하는 데 걸리는 대략적인 시간을 미리 알고 싶어합니다. LFS는 다양한 시스템에서 빌드 할 수 있기 때문에 절대적인 예상 시간을 알려주는 것은 불가능합니다. 가장 큰 패키지(gcc)는 빠른 시스템에서 약 5분이 걸리지만 느린 시스템에서는 며칠이 걸릴 수도 있습니다. 그래서 실제 시간 단위 대신 SBU(Standard Build Unit) 측정값이 대신 사용됩니다.

SBU 측정은 다음과 같이 합니다. 컴파일할 첫 번째 패키지는 5장의 binutils입니다. 하나의 코어를 사용하여 컴파일하는 데 걸리는 시간을 표준 빌드 단위 또는 SBU라고 합니다. 다른 모든 컴파일 시간은 이 시간 단위로 표현됩니다.

예를 들어 컴파일 시간이 4.5 SBU인 패키지를 생각해 봅시다. 즉, 시스템에서 첫 번째 binutils를 컴파일하고 설치하는 데 4분이 걸렸다면 예로든 패키지를 빌드하는 데 약 18분이 걸린다는 뜻입니다. 다행히도 대부분의 빌드 시간은 1 SBU 보다 짧습니다.

SBU는 호스트 시스템의 GCC 버전 등 여러 요인에 따라 달라지기 때문에 아주 정확하지는 않습니다. 여기에서는 패키지를 설치하는 데 걸리는 시간을 예상하기 위해 제공되지만 경우에 따라 수십 분까지 차이가 날 수 있습니다.

일부 최신 시스템에서는 메인보드가 시스템의 클럭 속도를 제어할 수 있습니다. 이는 powerprofilesctl와 같은 명령어로 제어됩니다. 이 기능은 LFS에서는 제공되지 않지만, 호스트로 사용하는 배포판에서 제공될 수 있습니다. LFS를 완료하고 BLFS에서 power-profiles-daemon 페이지에 나오는 안내를 따라서 시스템에 추가하는 것이 가능합니다. 어떤 패키지의 빌드 시간을 측정하기 전에 최대 성능(또는 최대 전력 소비) 시스템 전력 프로파일 세트를 사용하는 것을 권합니다. 그렇지 않은 경우에 binutils-pass1이나 다른 패키지를 빌드할 때 시스템이 다르게 반응할 수 있어 측정된 SBU 값이 오차가 커질 수 있습니다. 동일한 프로파일을 두 패키지에 사용해도 빌드 시작 시 시스템이 유휴 상태인 경우 시스템 반응이 느려질 수 있어 오차가 더욱 커질 수 있습니다. 파워 프로파일을 “성능”으로 설정하면 이러한 문제에서 발생하는 오차를 줄일 수 있습니다. 그리고 LFS 빌드에 필요한 시간도 줄어듭니다.

powerprofilesctl을 사용 가능한 경우 powerprofilesctl set performance 명령으로 performance 프로파일을 선택하세요. 일부 배포판은 powerprofilesctl 대신에 tuned-adm 명령을 제공합니다. 이러한 배포판을 호스트 시스템으로 사용중이라면 tuned-adm profile throughput-performance 명령으로 throughput-performance 프로파일을 선택하세요.

참고 다중 프로세서를 사용하는 경우 이 책에 나오는 SBU 단위는 훨씬 더 복잡하게 됩니다. 경우에 따라서는 make 단계가 그냥 실패할 수도 있습니다. 다른 프로세스의 라인이 섞여있어 빌드 프로세스의 출력을 분석하는 것도 더 어려워집니다. 빌드 단계에서 문제가 발생하면 단일 프로세서 빌드로 되돌려 오류 메시지를 제대로 분석하세요. 여기에 제시된 시간은 4개의 코어(-j4) 사용을 기준(하나의 코어로 진행하는 binutils-pass1은 제외)으로 합니다. 8장에서 표기하는 시간에는 별도로 명시되지 않는 한 해당 패키지에 대한 테스트 스위트를 실행하는 시간도 포함됩니다.

이전
환경 설정

위로

다음
테스트 관련 사항