Engflow, компания по ускорению сборки, созданная бывшими инженерами Google в рамках проекта с открытым исходным кодом Bazel для удаленного выполнения сборки для разработчиков, недавно запустила публичную бета -версию Cmake Re, службы удаленного выполнения для пользователей системы сборки программного обеспечения Cmake.
Engflow также недавно приобрела компанию под названием Tipi.build, чтобы поддержать свою линейку продуктов ускорения сборки.
Типи
Tipi.build обеспечивает быстрые удаленные C, C ++ и Rust -сборки с помощью технологии кэширования на основе Cmake и GIT. TIPI позволяет разработчикам мгновенно тестировать и строить кроссплатформенные и добавлять керны CPU Cloud, когда это необходимо, обеспечивая непрерывную интеграцию в кончики пальцев разработчиков.
Базируясь в Цюрихе, Швейцария, TIPI, была основана энтузиастами CMAKE и разработчиками C ++, которые хотят повысить гибкость разработчиков, не жертвуя производительностью или безопасностью. Продукты TIPI используются для разработки критического программного обеспечения для Интернета вещей (IoT), финансовой торговли, медицинских устройств, автомобильных секторов и многого другого.
Engflow и Tipi ранее сотрудничали с службами выполнения удаленной сборки Cmake, а приобретение предоставляет клиентам Engflow более глубокие знания в области модернизации и кэширования системы сборки.
Cmake re и hermeticfetchcontent
Бета Cmake Re предлагает услуги удаленного выполнения для пользователей системы программного обеспечения Cmake. Он также обеспечивает ускорение сборки, кэширование и удаленное выполнение для разработчиков C и C ++. Кроме того, его функции включают локальные герметические сборки Cmake, кэширование сборки и зависимости и распределение облачной сборки.
Новый проект с открытым исходным кодом, HermeticFetchContent, привносит более современные функции системы сборки для разработчиков C и C ++. Он решает безопасность программного обеспечения и непрерывные проблемы доставки и обеспечивает механизмы управления зависимостями и происхождения, в том числе билет на программное обеспечение (SBOMS).
В сочетании с Cmake RE, герметикафетчконтент значительно ускоряет время сборки — до 21x в некоторых случаях быстрее в некоторых случаях.
«Мы объединились с Tipi.build, создателями Cmake Re и hermeticfetchContent, чтобы оптимизировать нашу сборку Cmake, нацеленную на сотни конфигураций»,-говорится в заявлении Джоди Хагинс, инженер C ++ в области высокочастотной торговли и члена комитета по стандартам ISO C ++. «Их подход к источникам Cached Builds не только ускорил нашу сборку, но и улучшил безопасность, позволив нам обеспечить дезинфицирующие средства в нашей цепочке зависимостей».
Кодовые базы растут в геометрической прогрессии, как и разработка C ++
Эти инструменты становятся все более важными по мере того, как кодовые базы растут больше, особенно с экспоненциально добавлением строк кода, сообщила New Stack Helen Altshuler, генеральный директор Engflow. Технология помогает сократить время сборки с часа до минут и поддерживает сообщество разработчиков C и C ++, которое оценивается в более чем 7 миллионов разработчиков.
По словам Дэмиена Буля, соучредителя TIPI, разработка C ++ все еще растет, особенно в финансах, встроенных системах, IoT и AI. Такие компании, как Google, перемещают кодовые базы Python в C ++ для эффективности, по сообщениям, потому что необходимо в 7 раз меньше серверов.
«Все компании ИИ используют C ++, потому что… если вы создаете программное обеспечение в C ++, у вас есть в семь раз меньше серверов, чем если вы создаете его с PHP или Python», — сказал Буль.
Комбинированная платформа (Cmake Re) предлагает двухслойную систему удаленного выполнения:
- Слой 1 (tipi.build): локальное ускорение сборки с ограничениями на основе размера машины.
- Уровень 2 (Engflow): распределенная система сборки, которая может масштабироваться на тысячи ядер.
Вместе они создают опыт «суперкомпьютера», который более рентабельный, чем использование крупных отдельных машин.
«Мы превращаем 20 000 ядер, или 40 000 ядер, которые распределены по многим компьютерам, по сути», — сказал Альтхулер в новом стеке. «Таким образом, от клиента, использующего удаленное исполнение, у них есть этот кластер, так что, по сути, у него есть суперкомпьютер».
Действительно, ИИ уже создает много кода. ИИ также создает много плохого кода, «который значительно замедляется. Мы поговорили с некоторыми из наших клиентов, у которых сейчас есть очереди на сборки», — сказала она.
«В возрасте еще большего количества кода и еще большего количества тестовых итераций, особенно если это плохой код… важно иметь самые надежные и масштабируемые системы для обработки этого построения и тестирования рабочего процесса», — добавил Альтхулер.
На основе Bazel
Проект Google Bazel появился в последние годы как одна из лучших систем сборки для современных сложных кодовых баз полиглота и по своей сути предназначена для преодоления этих проблем. Тем не менее, технология Engflow Bazel Cluster предлагает повышенную производительность системы сборки для крупных команд разработчиков.
Более того, сочетание как компаний, так и их соответствующих технологий — Tipi.build и Engflow — приносит все преимущества удаленного исполнения Bazel и кэширование CMAKE, не требуя разрушительных миграций системы сборки, сказал Буль.
Сознание требований безопасности
Между тем, hermeticfetchContent решает безопасность программного обеспечения и непрерывные проблемы доставки для удовлетворения нормативных требований.
Команды инженерных платформ, использующие C и C ++, сталкиваются с новыми проблемами, когда речь идет о безопасной и непрерывной доставке программного обеспечения, особенно когда федеральное правительство призывает к устранению C и C ++ из критических систем.
Компиляция и автоматическое тестирование для Rust, C и C ++ кода являются вычислительными, и общие кодовые базы могут занять много часов для компиляции, генерируя очень большие деревья сборки, отметил Бул. Проблемы усугубляются, когда команды добавляют статические анализаторы и дезинфицирующие инструменты в свои сборки и тесты для выполнения требований безопасности, недавно определенных АНБ, Белым домом и Европейским союзом.
По словам Буля, hermeticfetchContent позволяет разработчикам запускать проверки безопасности памяти (дезинфицирующие средства) на всех цепях зависимостей.
Trending Stories youtube.com/thenewstack Tech движется быстро, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом. Дэррил К. Тафт охватывает DevOps, инструменты разработки программного обеспечения и проблемы, связанные с разработчиком из своего офиса в районе Балтимора. Он имеет более чем 25 -летний опыт работы в бизнесе и всегда ищет следующий совок. Он работал … читайте больше от Дэррила К. Тафта