Files
blog/docs/linux/distrant.md
Basyrov Rustam 49fa395a10 init motivation
2025-01-23 22:01:31 +03:00

2.5 KiB
Raw Blame History

Немного про распределенную компиляцию

В телеграмме про распределенные и параллельные вычисления

Мотивация / Введение

Про gentoo и распределенные системы.

Мне, как любителю Linux всегда было интересно установить Gentoo Linux. На это есть множество причин, сейчас не о них. Суть в том, этап установки системы на виртуальную машину пройден и есть желание попробовать установить на маломощный нетбук. Возникает проблема: Gentoo Linux -- это т.н. "source-based" дистрибутив, т.е. она распространяется в виде исходного кода. В свою очередь, компиляция системы на нетбуке занимает чуть больше суток (возможно, это можно поправить более тщательной конфигурацией перед сборкой, но, на мой взгляд, это слишком "хардкорный" путь).

Таким образом, возникает вопрос -- можно ли ускорить компиляцию? Тут на помощь приходит distcc, своего рода фронтенд для компиляторов C/C++.

Здесь мы хотим посмотреть на возможность компиляции ядра Linux (минимальной конфигурации tinyconfig) на двух виртуальных машинах с разными характеристиками. Но для этого нужно рассказать про утилиту vagrant, конфигуратор виртуальных машин.

Vagrant

  • Польза для сисадмина
  • Создание стендов
  • Декларативный стиль работы с виртуальными машинами

Distcc

  • Распределенная компиляция

Компиляция

  • Демонстрация стенда
  • Компиляция на одной машине (gcc)
  • Компиляция на одной машине (distcc)
  • Компиляция на нескольких машинах (distcc)
  • Таблица сравнения