diff options
author | Sn4il <sn4il@thedroth.rocks> | 2024-09-02 15:54:35 +0300 |
---|---|---|
committer | Sn4il <sn4il@thedroth.rocks> | 2024-09-02 15:54:35 +0300 |
commit | 2203e654b389586650d553251b04544a34f189bf (patch) | |
tree | 0125b69fc70a2506c53158ba2020993a5b8985b7 /lfs-12.2-sysv/chapter04/aboutsbus.html | |
parent | 200d528e55ca954d37769f4d143f10c9519b00e7 (diff) | |
download | sn4il-site-2203e654b389586650d553251b04544a34f189bf.tar.gz sn4il-site-2203e654b389586650d553251b04544a34f189bf.zip |
LFS 12.2
Diffstat (limited to 'lfs-12.2-sysv/chapter04/aboutsbus.html')
-rw-r--r-- | lfs-12.2-sysv/chapter04/aboutsbus.html | 184 |
1 files changed, 184 insertions, 0 deletions
diff --git a/lfs-12.2-sysv/chapter04/aboutsbus.html b/lfs-12.2-sysv/chapter04/aboutsbus.html new file mode 100644 index 0000000..82bd9b9 --- /dev/null +++ b/lfs-12.2-sysv/chapter04/aboutsbus.html @@ -0,0 +1,184 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" /> + <title> + 4.5. О SBU (Стандартная единица времени сборки) + </title> + <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" /> + <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" /> + <link rel="stylesheet" href="../stylesheets/lfs-print.css" type= + "text/css" media="print" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + </head> + <body class="lfs" id="lfs-12.2"> + <div class="navheader"> + <h4> + Линукс с нуля - Версия 12.2 + </h4> + <h3> + Глава 4. Заключительный этап подготовки + </h3> + <ul> + <li class="prev"> + <a accesskey="p" href="settingenvironment.html" title= + "Настройка окружения">Пред.</a> + <p> + Настройка окружения + </p> + </li> + <li class="next"> + <a accesskey="n" href="abouttestsuites.html" title= + "О наборах тестов">След.</a> + <p> + О наборах тестов + </p> + </li> + <li class="up"> + <a accesskey="u" href="chapter04.html" title= + "Глава 4. Заключительный этап подготовки">Наверх</a> + </li> + <li class="home"> + <a accesskey="h" href="../index.html" title= + "Линукс с нуля - Версия 12.2">Начало</a> + </li> + </ul> + </div> + <h1 class="sect1"> + <a id="ch-preps-aboutsbus" name="ch-preps-aboutsbus"></a>4.5. О SBU + (Стандартная единица времени сборки) + </h1> + <div class="sect1" lang="ru" xml:lang="ru"> + <p> + Многие люди хотели бы знать заранее, сколько примерно времени + потребуется для компиляции и установки каждого пакета. Поскольку + Linux From Scratch может быть собран на различных системах, + невозможно дать точную оценку времени. Сборка самого большого пакета + (gcc) займет около 5 минут на быстрых системах, но может занять + несколько дней на более медленных компьютерах! Вместо фактического + времени в книге используется показатель "стандартная единица времени + сборки" (SBU). + </p> + <p> + Показатель SBU рассчитывается следующим образом. Первым пакетом, + который нужно скомпилировать, является binutils в <a class="xref" + href="../chapter05/chapter05.html" title= + "Глава 5. Сборка кросс-тулчейна">Глава 5</a>. Время, необходимое + для компиляции этого пакета с использованием одного ядра, будет + называться стандартной единицей времени сборки или SBU. Время + компиляции остальных пакетов будет рассчитано относительно этого + времени. + </p> + <p> + Например, рассмотрим пакет, время компиляции которого составляет 4,5 + SBU. Это означает, что если вашей системе потребовалось 4 минуты для + компиляции и сборки первого прохода binutils, то для сборки этого + пакета потребуется <span class="emphasis"><em>примерно</em></span> 18 + минут. К счастью, в большинстве случаев, время сборки меньше, чем у + binutils. + </p> + <p> + В целом, величина SBU не совсем точна, поскольку она зависит от + множества факторов, начиная от версии GCC хост-системы. Она приведены + здесь, чтобы дать оценку того, сколько времени может потребоваться + для сборки пакета, но в некоторых случаях цифры могут отличаться на + десятки минут. + </p> + <p> + В современных материнских платах есть возможность управлять тактовой + частотой процессора. Это можно сделать с помощью команды, такой как, + <span class="command"><strong>powerprofilesctl</strong></span>. + Данная возможность отсутствует в LFS, но может быть доступна в + хост-дистрибутиве. После сборки LFS управление производительностью и + электропитанием можно добавить в систему с помощью инструкций, + описанных на странице <a class="ulink" href= + "https://mirror.linuxfromscratch.ru/blfs/view/12.2/sysutils/power-profiles-daemon.html"> + BLFS power-profiles-daemon</a>. + </p> + <p> + Перед измерением времени сборки любого пакета рекомендуется + задействовать профиль энергопотребления системы, настроенный на + максимальную производительность (и максимальное энергопотребление). + </p> + <p> + В противном случае измеренное значение SBU может быть неточным, + поскольку система может по-разному реагировать на сборку <a class= + "xref" href="../chapter05/binutils-pass1.html" title= + "5.2. Binutils-2.43.1 - Проход 1">binutils-pass1</a> или других + пакетов. + </p> + <p> + Имейте в виду, что даже если для обоих пакетов используется один и + тот же профиль, все равно могут возникнуть существенные неточности, + поскольку система может реагировать медленнее, если система + простаивает при запуске процедуры сборки. Установка для профиля + питания режима <span class="quote">«<span class= + "quote">производительность</span>»</span> сведет к минимуму эту + проблему. И, очевидно, это также ускорит сборку LFS. + </p> + <p> + Если <span class="command"><strong>powerprofilesctl</strong></span> + доступен, введите команду <span class= + "command"><strong>powerprofilesctl set performance</strong></span>, + чтобы выбрать профиль <code class= + "literal">производительность</code>. Некоторые дистрибутивы для + управления профилями предоставляют команду <span class= + "command"><strong>tuned-adm</strong></span> вместо <span class= + "command"><strong>powerprofilesctl</strong></span>, в этих + дистрибутивах введите команду <span class="command"><strong>tuned-adm + profile throughput-performance</strong></span>, чтобы выбрать профиль + <code class="literal">производительность</code>. + </p> + <div class="admon note"> + <img alt="[Примечание]" src="../images/note.png" /> + <h3> + Примечание + </h3> + <p> + Когда используется несколько ядер, единицы измерения SBU будут + различаться еще больше, чем обычно. В некоторых случаях make просто + завершится ошибкой. Анализ выходных данных процесса сборки также + будет более сложным, поскольку строки разных потоков будут + чередоваться. Если вы столкнулись с проблемой на этапе сборки, + вернитесь к сборке на одном ядре, чтобы проанализировать сообщения + об ошибках. + </p> + <p> + Представленные здесь значения времени для всех пакетов (за + исключением <a class="xref" href="../chapter05/binutils-pass1.html" + title="5.2. Binutils-2.43.1 - Проход 1">binutils-pass1</a>, который + собирается на одном ядре) рассчитаны при использовании четырех ядер + (-j4). Время, указанное в главе 8, также включает время выполнения + регрессионных тестов для пакета, если не указано иное. + </p> + </div> + </div> + <div class="navfooter"> + <ul> + <li class="prev"> + <a accesskey="p" href="settingenvironment.html" title= + "Настройка окружения">Пред.</a> + <p> + Настройка окружения + </p> + </li> + <li class="next"> + <a accesskey="n" href="abouttestsuites.html" title= + "О наборах тестов">След.</a> + <p> + О наборах тестов + </p> + </li> + <li class="up"> + <a accesskey="u" href="chapter04.html" title= + "Глава 4. Заключительный этап подготовки">Наверх</a> + </li> + <li class="home"> + <a accesskey="h" href="../index.html" title= + "Линукс с нуля - Версия 12.2">Начало</a> + </li> + </ul> + </div> + </body> +</html> |