Повышение эффективности и скорости разработки МЛ/ИИ

В быстротемповом мире разработки ИИ/МЛ критически важно иметь инфраструктуру, которая может справиться с требованиями инженеров МЛ. Медленное время сборки и неэффективность упаковки и распространения исполняемых файлов могут снизить продуктивность и потратить ценное время.

Чтобы справиться с этими проблемами, наша команда предприняла активные меры по борьбе со слишком медленными сборками и неэффективной упаковкой, что привело к значительному сокращению накладных расходов и улучшению эффективности.

Вместо использования устаревших версий, требующих повторной сборки и связывания, мы сосредоточились на минимизации пересборок путем оптимизации графа сборки и учета зависимостей. Такой подход значительно уменьшил необходимость в обширной пересборке и улучшил общую скорость сборки.

Еще одной большой трудностью, с которой мы столкнулись, была упаковка и распределение исполняемых файлов. Чтобы преодолеть эту проблему, мы внедрили инкрементный подход, используя файловую систему с адресацией по содержимому (CAF). Применение учета содержимого позволяет CAF интеллектуально пропускать повторную загрузку файлов, уже присутствующих в хранилище с адресацией по содержимому (CAS). Это не только сокращает время упаковки, но также минимизирует время загрузки при работе с большими исполняемыми файлами.

Для повышения эффективности системы CAF мы развернули демона CAS на большинстве хостов в нашем центре обработки данных. Этот демон отвечает за поддержание локальных кэшей, организацию пиринговой сети с другими экземплярами демонов CAS и оптимизацию загрузки содержимого. Благодаря использованию этой сети мы можем напрямую получать содержимое из других экземпляров, сокращая задержку и увеличивая пропускную способность хранилища.

В отличие от традиционных решений на основе слоев, таких как OverlayFS от Docker, наш подход ориентирован на прямой доступ к файлам и интеллектуальное маршрутизацию приоритетов. Это позволяет нам эффективно управлять различными зависимостями в различных исполняемых файлах без сложности илиганизации слоев. Кроме того, благодаря использованию файловой системы Btrfs, мы получаем преимущества ее возможностей сжатия и возможность непосредственной записи сжатых данных хранилища в разделы.

Решая проблемы медленных сборок и неэффективной упаковки и распределения исполняемых файлов, мы предоставляем нашим инженерам по МЛ возможность работать более эффективно и предлагать передовые решения. Наше внимание к сокращению пересборок, оптимизации управления зависимостями и внедрению инкрементного подхода к упаковке позволило добиться значительной экономии времени и улучшить продуктивность в процессе разработки систем искусственного интеллекта и машинного обучения.

Часто задаваемые вопросы:

В: С какими сложностями столкнулась команда в разработке ИИ/МЛ?
О: Команда столкнулась с медленными временами сборки, неэффективностью упаковки и распространения исполняемых файлов, а также сложностями управления различными зависимостями в различных исполняемых файлах.

В: Как команда справилась с медленными сборками?
О: Команда справилась с медленными сборками путем оптимизации графа сборки и учета зависимостей, что уменьшило необходимость в обширной пересборке и улучшило общую скорость сборки.

В: Как команда решала вопрос упаковки и распределения исполняемых файлов?
О: Команда внедрила инкрементный подход с использованием файловой системы с адресацией по содержимому (CAF), которая интеллектуально пропускает повторную загрузку уже присутствующих файлов в хранилище с адресацией по содержимому (CAS). Это сокращает время упаковки и минимизирует задержку при работе с большими исполняемыми файлами.

В: Какая цель демона CAS, развернутого на хостах дата-центра?
О: Демон CAS отвечает за поддержание локальных кэшей, организацию пиринговой сети с другими экземплярами демонов CAS и оптимизацию загрузки содержимого. Он позволяет напрямую получать содержимое из других экземпляров, сокращая задержку и увеличивая пропускную способность хранилища.

В: Как команда управляет зависимостями без сложности организации слоев?
О: В отличие от традиционных решений, команда приоритезирует прямой доступ к файлам и интеллектуальную маршрутизацию приоритетов вместо решений на основе слоев, таких как OverlayFS от Docker. Такой подход позволяет эффективно управлять различными зависимостями в различных исполняемых файлах.

В: Какую файловую систему использует команда и какие преимущества она предоставляет?
О: Команда использует файловую систему Btrfs, которая предоставляет возможности сжатия и возможность непосредственной записи сжатых данных хранилища в разделы. Это повышает эффективность и возможности хранения.

Определения:

— ИИ/МЛ: Является сокращением от искусственного интеллекта/машинного обучения и относится к разработке и применению алгоритмов и моделей, позволяющих компьютерам выполнять задачи без явных инструкций.
— Инженеры МЛ: Относятся к инженерам, специализирующимся на машинном обучении, которые разрабатывают, реализуют и оптимизируют алгоритмы и модели МЛ.
— Пересборка: Процесс перестройки или пересборки программного или кодового обеспечения.
— Упаковка: Процесс подготовки программного обеспечения для распространения путем связывания его с соответствующими файлами и зависимостями.
— Файловая система с адресацией по содержимому (CAF): Файловая система, которая идентифицирует файлы на основе их содержимого, а не их расположения или имени, что позволяет эффективно хранить и извлекать данные.
— Хранилище с адресацией по содержимому (CAS): Система хранения, в которой содержимое идентифицируется и ссылается с помощью уникальных идентификаторов, обеспечивая дедупликацию и эффективное извлечение данных.
— Зависимость: Компонент программного обеспечения или библиотека, от которой зависит другое программное обеспечение, чтобы работать правильно.
— Задержка: Время, проходящее между инициированием запроса и получением ответа.
— Пропускная способность: Максимальная скорость передачи данных по заданному каналу или сети.
— Btrfs: Файловая система с копированием при записи для Linux, предоставляющая функции, такие как создание снимков, подтомы, сжатие и масштабируемость.

Связанные ссылки:
— Распределенное реактивное программирование
— Amazon Machine Learning
— Эффективное распределенное машинное обучение: перспектива одного узла

The source of the article is from the blog bitperfect.pe

Privacy policy
Contact