П. О. ГОГЛОВ, Т. УАЙЛДИШ1, Д. ХУФНАГЕЛ2

Московский инженерно-физический институт (государственный университет)

1 Принстонский университет, США

2 Европейский центр ядерных исследований, Швейцария

АВТОМАТИЗАЦИЯ ОБРАБОТКИ ДАННЫХ
В ЭКСПЕРИМЕНТЕ «КОМПАКТНЫЙ МЮОННЫЙ СОЛЕНОИД»

Рассмотрена система автоматизации обработки данных эксперимента «Компактный мюонный соленоид» в рамках вычислительной структуры Европейского центра ядерных исследований.

Эксперимент «Компактный мюонный соленоид» (Compact Muon Solenoid - CMS) в Европейской организации ядерных исследований (European Organization for Nuclear Research – CERN/ЦЕРН) создан для изучения физических характеристик элементарных частиц и является одним из экспериментов, проводимых совместно с проектом Большого адронного коллайдера (LHC – Large Hadron Collider).

В соответствии с проектом эксперимента данные с детектора элементарных частиц собираются системой сбора данных (Data Aquisition System - DAQ), проходят несколько этапов обработки с использованием вычислительных мощностей ЦЕРНа и поступают на постобработку в семь научно-исследовательских организаций, расположенных в разных точках земного шара.

Первоначальная обработка данных использует набор программного обеспечения, на вход которому подается спецификация работы, необходимой для выполнения поставленной задачи и файл данных, поступающих из системы сбора данных детектора. Файлы данных поступают со скоростью 225 МБ/с, что потребовало создания автоматизированной системы передачи и обработки данных. Основными требованиями к системе являются:

НЕ нашли? Не то? Что вы ищете?

-  малое время реагирования на факт поступления файла данных;

-  возможность подключения новых модулей «на лету»;

-  возможность распределения вычислительной нагрузки;

-  возможность масштабирования системы.

Автоматизация первоначальной обработки данных была проведена при помощи библиотеки Perl Object Environment (POE) - платформы для реализации многозадачного сетевого программного обеспечения [1], что позволило автоматизированной системе передачи и обработки данных ответить требованиям первоначальной обработки данных.

Автоматизированная система для первоначальной обработки данных состоит из управляющего компонента (в первоначальной версии одного, позже двух) и модулей управления задачами обработки и передачи данных.

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

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

Средствами библиотеки POE была реализована возможность распределения задач не только на уровне модулей системы, но и на уровне подмодулей. Иерархия подмодулей состоит из управляющего подмодуля, связанного с основным управляющим компонентом, и рабочего модуля, принимающего задания на обработку. Использование такой архитектуры позволило разнести каждый этап обработки данных на несколько потоков, тем самым распределив вычислительную нагрузку.

Созданная автоматизированная система хорошо зарекомендовала себя в рамках испытаний вычислительных систем эксперимента Компактный мюонный соленоид [2].

Список литературы

1.  http://search. cpan. org/~rcaputo/POE-0.9999/lib/POE. pm

2.  https://twiki. cern. ch/twiki/bin/view/CMS/CMST0Csa06PostMortem