Обложка канала

Протестировал

Фильтрованный контент о тестировании и качестве ПО.

Протестировал

7 лет назад
Открыть в
В опубликованных материалах конференции USENIX 2019 мое внимание привлёк один доклад.

Докладчик рассказывает про фреймворк, который позволяет некоторые типы задач выполнять гораздо быстрее, чем локально или в облачных виртуальных машинах. К таким задачам он относит компиляцию программ, тестирование, обработка видео и др. Например локальная сборка проекта Inkscape занимает 32 мин на одном ядре, сборка с помощью фреймворка gg занимает полторы минуты и обходится в 50 центов. Такое существенное ускорение получилось за счёт разделения задачи на небольшие подзадачи (в данном случае препроцессинг Си кода и компиляция отдельных файлов) и параллельного (тысячи потоков) выполнения этих подзадач на легковесных контейнерах AWS Lambda. Другой пример - запуск юнит-тестов. Каждая тест - независимая программа и параллельный запуск тестов может существенно сократить время тестирования. Авторы экспериментировали с библиотекой LibVPX за счёт параллельного выполнения тестов с помощью gg сократили время с 1.5 часов до 4 минут.

Код фреймворка - https://github.com/stanfordsnr/gg

From Laptop to Lambda: Outsourcing Everyday Jobs to Thousands of Transient Functional Containers
https://www.usenix.org/conference/atc19/presentation/fouladi (слайды, статья, видео доклада)

P.S. На просмотр видео и чтение статьи не у всех время есть, поэтому посмотрите хотя бы скринкаст с запуском тестов ffmpeg в AWS Lambda с помощью gg - https://asciinema.org/a/257545 По-моему впечатляет.
USENIX ATC '19 - Measure, Then Build

Remzi Arpaci-Dusseau, University of Wisconsin—Madison This talk will discuss an approach to systems research based upon an iterative, empirically-driven appr...

YouTube