В статье описывается архитектура распределенной системы, которая позволяет проводить вычисления параллельно на больших наборах входных данных. Система может использоваться для задач, где для получения результата требуется большое количество выполнить программу с разными входными параметрами, например, визуализация данных или генерация синтетического набора данных для задач машинного обучения. Основными компонентами системы для параллельных вычислений являются: сервер для управления задачами и сбора статистики, управляющий сервис (супервизор) для управления очередью задач и рабочими узлами, набор рабочих узлов, на которых производится выполнение задач, а также пользовательский интерфейс. Любая задача автоматически разбивается на более мелкие части - подзадачи, которые отправляются на выполнение рабочим узлам. Для взаимодействия с системой пользователь использует пользовательский интерфейс, разработанный на языке JavaScript. Для выполнения задачи пользователь создает JSON файл с входными параметрами каждой подзадачи и подготавливает docker-образ, в котором будут происходить вычисления. Система может быть развернута в любом общедоступном облаке.