From 18ce97f095769e2b7501bd569515d21abc726794 Mon Sep 17 00:00:00 2001 From: Poltern <2363951+Poltern@users.noreply.github.com> Date: Tue, 27 Aug 2024 12:56:29 +0500 Subject: [PATCH] Add more detail to the About SBUs page --- chapter04/aboutsbus.xml | 44 ++++++++++++++++++++++++++++++------ chapter05/binutils-pass1.xml | 2 +- 2 files changed, 38 insertions(+), 8 deletions(-) diff --git a/chapter04/aboutsbus.xml b/chapter04/aboutsbus.xml index 951a15f..1a4c603 100644 --- a/chapter04/aboutsbus.xml +++ b/chapter04/aboutsbus.xml @@ -23,15 +23,44 @@ или SBU. Время компиляции остальных пакетов будет рассчитано относительно этого времени. Например, рассмотрим пакет, время компиляции которого составляет 4,5 SBU. - Это означает, что если вашей системе потребовалось 10 минут для компиляции и сборки + Это означает, что если вашей системе потребовалось 4 минуты для компиляции и сборки первого прохода binutils, то для сборки этого пакета потребуется - примерно 45 минут. К счастью, в большинстве случаев, время + примерно 18 минут. К счастью, в большинстве случаев, время сборки меньше, чем у binutils. - В целом, величина SBU не совсем точна, поскольку она зависит от многих - факторов, включая версию GCC хост-системы. Она приведены здесь, чтобы дать + В целом, величина SBU не совсем точна, поскольку она зависит от множества + факторов, начиная от версии GCC хост-системы. Она приведены здесь, чтобы дать оценку того, сколько времени может потребоваться для сборки пакета, но в некоторых случаях цифры могут отличаться на десятки минут. + + В современных материнских платах есть возможность управлять тактовой + частотой процессора. Это можно сделать с помощью команды, такой как, + powerprofilesctl. Данная возможность отсутствует в LFS, но + может быть доступна в хост-дистрибутиве. После сборки LFS управление производительностью + и электропитанием можно добавить в систему с помощью инструкций, описанных на странице + BLFS power-profiles-daemon. + + + Перед измерением времени сборки любого пакета рекомендуется задействовать профиль + энергопотребления системы, настроенный на максимальную производительность (и максимальное + энергопотребление). + + В противном случае измеренное значение SBU может быть неточным, поскольку система + может по-разному реагировать на сборку или + других пакетов. + + Имейте в виду, что даже если для обоих пакетов используется один и тот же профиль, все + равно могут возникнуть существенные неточности, поскольку система может реагировать медленнее, + если система простаивает при запуске процедуры сборки. Установка для профиля питания режима + производительность сведет к минимуму эту проблему. И, очевидно, это также ускорит + сборку LFS. + + Если powerprofilesctl доступен, введите команду + powerprofilesctl set performance, чтобы выбрать профиль + производительность. Некоторые дистрибутивы для управления профилями + предоставляют команду tuned-adm вместо powerprofilesctl, + в этих дистрибутивах введите команду tuned-adm profile throughput-performance, + чтобы выбрать профиль производительность. Когда используется несколько ядер, единицы измерения SBU будут @@ -41,9 +70,10 @@ столкнулись с проблемой на этапе сборки, вернитесь к сборке на одном ядре, чтобы проанализировать сообщения об ошибках. - Представленные здесь значения времени основаны на замерах при использовании - четырех ядер (-j4). Время, указанное в главе 8, также включает время выполнения - регрессионных тестов для пакета, если не указано иное. + Представленные здесь значения времени для всех пакетов (за исключением + , который собирается на одном ядре) рассчитаны + при использовании четырех ядер (-j4). Время, указанное в главе 8, также включает время + выполнения регрессионных тестов для пакета, если не указано иное. diff --git a/chapter05/binutils-pass1.xml b/chapter05/binutils-pass1.xml index 2fc08ef..b7a6d92 100644 --- a/chapter05/binutils-pass1.xml +++ b/chapter05/binutils-pass1.xml @@ -5,7 +5,7 @@ %general-entities; ]> - +