Построение вычислительного кластера на основе коммуникационной среды PCI Express
Вопрос реализации производительного и надежного кластера с низкими стоимостными характеристиками. Построение кластерной системы на базе протокола ввода/вывода данных PCI Express. Поиск способов увеличения производительности среды кластерной системы.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 07.03.2019 |
Размер файла | 1,3 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на Allbest.ru
Аннотация
В данной статье рассматривается вопрос реализации производительного и надежного кластера с низкими стоимостными характеристиками. В качестве решения предлагается построение кластерной системы на базе протокола ввода/вывода данных PCI Express. Основной целью является поиск способов увеличения производительности кластерной системы и ее коммутационной среды. В качестве предмета исследования выступают алгоритмы передачи и обработки данных в коммутаторе, алгоритмы поиска и вытеснения данных в системе хранения данных, схемы арбитража портов коммутатора. Методология исследования - структурный системный анализ предметной области в части коммутационных структур, построения кэш-памяти систем хранения данных, способов построения кластерных систем. В статье предлагаются следующие структурные и алгоритмические решения: модифицированный алгоритм трансляции адресов внешнего коммутатора PCI Express; усовершенствованный метод и алгоритм поиска и обработки данных в кэш-памяти системы хранения данных на основе уникального хеширования; формализация всех ступеней алгоритмов арбитража портов и виртуальных каналов коммутатора. Ключевые слова: кластеры, коммуникационная сеть, протокол PCI Express, системы хранения данных, кэш-память, коммутатор, арбитраж портов, трансляция адресов, хеширование, ПЛИС
кластерная система
Abstract
The article discusses the implementation of a productive and reliable cluster with low cost. As a solution, the authors recommend building a cluster system based on the PCI Express data input / output protocol. The main goal is to find ways to increase the productivity of the cluster system and its circuit protection. The subjects of the study are the algorithms for data transfer and processing on the switch, algorithms for search and displacement data in storage system, switch ports arbitration scheme. The research methodology includes structured systems analysis in the domain of the connection structures, the construction of cache storage, methods of constructing cluster systems. The authors propose the following structural and algorithmic solutions: a modified algorithm for address translation of the external PCI Express Switch; an improved method and algorithm for data searching and processing in the cache data storage systems based on a unique hash; formalization of all stages of arbitration algorithms for ports and virtual switch channels.
Keywords:
clusters, communications network, PCI Express protocol, data storage, a cache memory, switch, Port arbitration, address translation, hashing, FPGA
Введение
Кластерные системы представляют собой совокупность вычислительных узлов, объединенных высокоскоростной сетью [1, 2]. Они предназначены для решения сложных вычислительных задач. В настоящее время применение кластерных систем получило широкое распространение. Они используются как в суперкомпьютерных центрах, так и на предприятиях и в организациях. С помощью кластера можно решить множество трудоёмких задач в различных отраслях науки, бизнеса и промышленности:
? в технологических процессах, в банковском деле, фармацевтике, энергетике, телекоме;
? при моделировании нефтяных и газовых месторождений;
? при проведении фундаментальных исследований в области физики, астрономии, молекулярной биологии, генетике и многих других.
Использование кластеров в бизнесе достаточно дорогостоящий проект, поэтому актуальной задачей является создание кластерных систем, обеспечивающих высокую производительность и надежность при низкой стоимости. Одним из таких решений является кластерная система на основе протокола PCI Express, обеспечивающая хорошую производительность и надежность на уровне, сравнимом с дорогостоящими аналогами.
Структура кластерной системы на основе PCI Express
Структура кластерной системы на основе PCIExpress
В общем виде кластерная система включает в себя: вычислительные узлы, выполняющие обработку данных; систему хранения данных (хранилище данных) и коммутационную сеть, в основе которой лежит коммутатор (рис. 1).
Рис. 1. Базовая структура кластерной системы
Коммутационная сеть значительно влияет на основные характеристики скорости передачи данных и производительности кластерной системы [3]. Поэтому важным моментом является повышение эффективности ее работы, т. е. повышение пропускной способности сети без снижения QoS.
Обычно коммутационная сеть строится на базе высокопроизводительных протоколов передачи данных, таких как Ethernet, Fibre Channel, InfiniBand и PCI Express. Использование сетевой инфраструктуры на базе протокола PCI Express имеет недостаток в сравнении с аналогами - ограничение по длине кабельной системы, соответственно и по дальности размещения вычислительных узлов и хранилищ данных. Однако, стоимость кластерной системы на базе PCI Express значительно ниже. На рис. 2 представлено сравнение стоимостных характеристик оборудования для разных коммуникационных сред. Таким образом, низкая стоимость позволит строить небольшие кластерные системы для среднего и малого сегмента: небольших бизнес-предприятий и организаций, для которых характерно небольшое территориальное удаление узлов.
Рис. 2. Сравнение стоимостных характеристик сетевой инфраструктуры на базе основных протоколов передачи данных
Производительность кластера на базе PCI Express можно повысить путем улучшения алгоритмов обработки, пересылки и доступа к данным, хранимым в системах хранения данных. Авторами статьи для повышения эффективности кластерной системы на основе протокола PCI Express предлагаются решения ряда задач:
1) разработка модифицированного алгоритма трансляции адресов в непрозрачных портах коммутатора PCI Express и его реализация на ПЛИС;
2) реализация оптимальной схемы арбитража портов коммутатора;
3) модификация алгоритмов обработки данных в кэш-памяти системы хранения данных.
Алгоритм трансляции адресов в портах коммутатора PCI Express
В рамках первой задачи разработан алгоритм трансляции адресов во входных портах коммутатора PCI Express, который позволяет транслировать адреса в непрозрачных портах с большей эффективностью, чем существующие алгоритмы прямой трансляции или LT-алгоритмы. Алгоритм позволяет сопоставить адреса двух вычислительных узлов кластерной системы, принадлежащих к разным адресным доменам, применяя специальный механизм трансляции адресов от исходящего адресного узла отправителя к входящему адресному узлу (рис. 3) [4-8].
Рис. 3. Распределение адресного пространства в узлах кластерной системы.
Использование нового алгоритма предполагает снижение времени прохождения пакетов через коммутирующее устройство. Это позволит повысить эффективную скорость передачи данных. Кроме того, в данном случае не требуется модификация самого протокола. Алгоритм базируется на поиске транслированного адреса по первым двум байтам адреса получателя, указанного в пакете уровня транзакций. Незначительной модификации требует лишь формат таблицы трансляции адресов. Поскольку транслированный и исходный адреса однозначно сопоставляются друг другу, то целесообразней не проводить поиск в таблице трансляции по искусственно введенному полю «Index», а определять соответствующий транслированный адрес по старшим битам исходного адреса. Аппаратная реализация самого устройства коммутатора не изменится, поскольку в новом алгоритме поиска будут задействованы те же самые наборы регистров.
Алгоритм поиска транслированного адреса в таблице трансляции хорошо распараллеливается. В данном случае целесообразнее использовать параллелизм независимых ветвей. Распараллеленный алгоритм несложно запрограммировать в ПЛИС.
Исследование схемы арбитража входных потоков
На этапе решения второй задачи реализации оптимальной схемы арбитража портов коммутатора исследованы алгоритмы арбитража и виртуальных каналов коммутатора PCI Express, описанных в спецификации протокола PCI Express 3. 0.
Система арбитража PCI Express является двухступенчатой (рис. 4), при этом первая ступень решает задачу обеспечения доступа потокам пакетов с разных входных портов, а вторая ступень решает задачу распределения потоков с учетом приоритетов. Такая организация является избыточной, что подчеркивается самими авторами спецификации [6], поскольку на каждый выходной порт требуется число аппаратных очередей, соответствующее числу входных портов, а затем потоки группируются в 8 выходных очередей, что соответствует числу виртуальных каналов. Но такое большое число является оправданным, поскольку позволяет равномерно распределять потоки с разных входных портов с учетом принадлежности разным виртуальным каналам.
Рис. 4. Схема арбитража портов коммутатора
В результате исследований был разработан и исследован алгоритм работы всех ступеней арбитража. Применение более эффективной схемы арбитража портов позволит ускорить обработку пакетов передачи данных в коммутаторе [9]. За счет этого повысится скорость передачи данных через коммутатор.
На обеих ступенях арбитража в коммутаторе PCI Express происходит ранжирование трафика по приоритетам с поддержкой циклической и взвешенной циклической схем приоритетов. Арбитр виртуальных каналов, кроме того, дает возможность использовать схему со строгими приоритетами одновременно с упомянутыми схемами. При этом виртуальные каналы делятся на две группы, размеры которых зависят от настройки, устанавливающей границу между группами.
Для исследований алгоритма на языке программирования C++ была написана имитационная модель арбитра коммутатора PCI Express [10-12]. В результате моделирования получены зависимости средней длины очереди от интенсивности входного потока пакетов для разных ступеней арбитража, что позволяет проследить динамику поведения арбитра в зависимости от его нагрузки и распределения входных пакетов по виртуальным каналам.
Алгоритмы работы кэш-памяти системы хранения данных
В рамках третьей задачи были исследованы существующие методы управления кэш-памятью систем хранения данных; детально проанализированы алгоритмы чтения, записи и вытеснения данных, а также структуры данных [13 - 15]. На основании произведенных исследований разработан метод поиска данных в кэш-памяти системы хранения данных на основе уникального хеширования. За счет применения новой структуры данных - индексной хеш-таблицы адресов дискового кэша (рис. 5) увеличивается скорость выполнения операции поиска блоков данных.
Рис. 5. Структура данных на основе уникального хеширования
Это приводит к уменьшению времени выполнения алгоритмов обработки данных в кэш-памяти, что позволит увеличить скорость доступа к хранимым данным и производительность кластерной системы в целом. Вдальнейшем планируется распараллеливание алгоритма поиска данных в кэш-памяти СХД и его аппаратная реализация на ПЛИС.
Библиография
1. Лацис, А. О. Как построить и использовать суперкомпьютер / А. О. Лацис. -М. : Бестселлер, 2003. - 240 с.
2. Корнеев, В. В. Вычислительные системы / В. В. Корнеев - М. : Ге-лиос АРВ, 2004. - 438с.
3. Берлин, А. Н. Коммутация в системах и сетях связи / А. Н. Берлин - М. : Эко-Тренд, 2006. - 341с.
4. Петров, С. Г. Шины PCI, PCI Express. Архитектура, дизайн, прин-ципы функционирования / С. Г. Петров - СПб. : БХВ - Петербург, 2006. - 405с.
5. Сухих, А. В. Структура параллельной вычислительной системы с распределенной внешней памятью / А. В. Сухих, Н. С. Васяева // «Инфор-мационные технологии в профессиональной деятельности и научной рабо-те»: всерос. научн. -практич. конф. - МарГТУ, Йошкар-Ола, 2012, том I, с. 172-177.
6. PCI Express Base Specification. Revision 3. 0 Режим доступа: https: //members. pcisig. com/wg/PCI-SIG/document/download/8269
7. Regula, J. Using Non-transparent Bridging in PCI Express Systems / J. Regula - PLX Technology, Inc., 2004. - 31c.
8. Increase of productivity of the PCI Express switch for cluster systems/ Vasjaeva N. S., Ivanov K. V., Suhih A. V. // В мире научных открытий. -Крас-ноярск: Научно-инновационный центр, 2014. № 10 (58) (Естественные и технические науки). -c. 248-262.
9. Бронштейн, И. О. Модели приоритетного обслуживания в инфор-мационно-вычислительных системах / И. О. Бронштейн, И. М. Духовный - М. : Наука, 1976. - 220с.
10. Иванов К. В., Кошпаев А. А., Васяева Н. С. Программная модель системы арбитража коммутатора PCI Express // Кибернетика и програм-мирование. - 2014. -№ 4. -С. 66-75. DOI: 10. 7256/2306-4196. 2014. 4. 12758. URL: http: //e-notabene. ru/kp/article_12758. html
11. Васяева, Н. С., Формальное представление алгоритма арбитража виртуальных каналов на шине PCI Express/ Н. С. Васяева Н. С., К. В. Ива-нов - Сборник материалов Всероссийской научно-практической конфе-ренции с международным участием «Информационные технологии в про-фессиональной деятельности и научной работе». -Йошкар-Ола: ПГТУ, 2014. - с. 223-229.
12. Васяева, Н. С. Моделирование и оптимизация системы арбитража для протокола PCI Express/ Н. С. Васяева Н. С., К. В. Иванов - Труды международной научной конференции «Параллельные вычислительные технологии (ПаВТ'2015) « (г. Екатеринбург, 31 марта - 2 апреля 2015 г.). -Челябинск: Издательский центр ЮУрГУ, 2015. с. 503 с.
13. Сибиряков, М. А. Применение хеширования для построения ин-дексных таблиц кэша в системах хранения данных / М. А. Сибиряков // Ма-териалы международной научно-практической конференции «Информа-ционные технологии. Проблемы и решения». - Уфа, 2015, том II, с. 205-209.
14. Васяева, Е. С. Разработка структуры индексных таблиц кэш-памяти системы хранения данных/ Е. С. Васяева Е. С., А. А. Кошпаев- Сборник материалов Всероссийской научно-практической конференции с международным участием «Информационные технологии в профессио-нальной деятельности и научной работе». -Йошкар-Ола: ПГТУ, 2014. - с. 214-222.
15. Sibiryakov, M. A. Analysis and comparison of cache memory control methods/ E. S. Vasyaeva, M. A. Sibiryakov, A. A. Koshpaev // В мире научных открытий. -Красноярск: Научно-инновационный центр, 2014. № 10 (58) (Естественные и технические науки). -c. 263-280.
Размещено на Allbest.ru
...Подобные документы
Структура модели на языке Express. Правила записи супертипов и подтипов. Разработка информационных моделей в рамках концепции CALS. Типы данных в языке Express. Структура портативного зарядного устройства ЗарядON. Изображение сущности на языке Express-G.
курсовая работа [487,9 K], добавлен 18.01.2013Цели, преимущества и проблемы внедрения системы CALS, необходимость и перспективы ее внедрения в России. Объектно-ориентированное моделирование, классификация паттернов и стратегии отображения конструкций языка EXPRESS в реляционную метамодель.
курсовая работа [51,1 K], добавлен 16.12.2009Многомерные структуры данных и поиск информации. Интеллектуальные системы и мягкие вычисления. Интегрированные и распределенные информационные системы. Построение базы данных. Проверка ввода некорректных символов и фильтрации, вывода и печати отчета.
отчет по практике [732,5 K], добавлен 07.07.2012Пропускная способность 32-разрядного процессора. Разрядная шина с совмещенными (мультиплексируемыми) линиями, конструктивы EuropacPRo. Шина Accelerated Graphics Port. Главные свойства PCI Express. Системы ввода-вывода данных. Видеокарта Х600 PCI-E х16.
презентация [1,7 M], добавлен 27.08.2013Построение структурной схемы модели системы, укрупненной схемы моделирующего алгоритма. Проект математической модели информационно-поисковой библиографической системы, построенной на базе двух ЭВМ и имеющей один терминал для ввода и вывода информации.
курсовая работа [598,2 K], добавлен 21.06.2011Системный анализ предметной области. Построение концептуальной и даталогичной модели базы данных. Физическое проектирование базы данных. Описание функциональной модели системы управления базами данных. Разработка экранных форм ввода-вывода и отчета.
курсовая работа [1,1 M], добавлен 09.12.2014Характеристики вычислительного кластера для тестирования программы, описание библиотек MPI и MKL. Общий вид системы линейных алгебраических уравнений. Использование метода GMRES для построения параллельного переобуславливателя. Сетевой закон Амдала.
курсовая работа [434,1 K], добавлен 14.11.2012Использование программой функции ввода-вывода данных для реализации дружественного интерфейса с пользователем. Функции консоли и особенности их применения для обеспечения аккуратного ввода информации и упорядоченного вывода. Обзор стандартных функций.
лабораторная работа [40,4 K], добавлен 06.07.2009Программирование полнофункциональной системы учета для предметной области "Концертный зал": построение концептуальной и реляционной моделей базы данных, описание способов реализации запросов и вывода отчета на экран, разработка интерфейса пользователя.
курсовая работа [1,5 M], добавлен 22.11.2010История развития вычислительной техники. Понятие высокой готовности и отказоустойчивости системы. Разработка функциональной схемы отказоустойчивого кластера и структурной схемы виртуального стенда. Технико-экономическое обоснование объекта проектирования.
дипломная работа [2,7 M], добавлен 26.02.2013Применение, настройка и правила работы в программе Outlook Express. Управление e-mail аккаунтами и аккаунтами новостных групп, быстрый просмотр сообщений. Адресная книга, отправка и получение защищенных сообщений. Ошибки и средства устранения неполадок.
статья [21,7 K], добавлен 03.05.2010Методы построения хранилища данных на основе информационной системы реального коммерческого предприятия. Основные аналитические задачи, для решения которых планируется внедрение хранилищ данных. Загрузка процессоров на серверах. Схемы хранения данных.
контрольная работа [401,0 K], добавлен 31.05.2013Файловые системы FAT. Разбиение области данных на кластеры. Потери дискового пространства при разных размерах раздела. Компромисс между эффективностью хранения данных и производительностью. Структура корневого каталога. Формирование номера кластера.
контрольная работа [30,7 K], добавлен 17.06.2014Требования к программному продукту: базе данных и интерфейсу. Анализ входной, выходной и постоянной информации. Выбор и обоснование выбора среды разработки, программной реализации, описание внутренней среды. Логическая и физическая модель данных.
курсовая работа [2,1 M], добавлен 04.05.2014Классификация периферийных устройств ввода и вывода данных для обмена информацией между компьютером и внешним миром. Системы распознавания магнитных знаков, символов. Принцип работы мониторов и принтеров. Вид манипуляторов для управления курсором.
реферат [272,7 K], добавлен 01.04.2014Особенности разработки модуля взаимодействия и приложений для мобильных устройств на базе Windows Mobile. Основные компоненты системы. Выбор протокола XMPP. Создание базы данных, тестирование и отладка системы. Программа, моделирующая аварийные ситуации.
курсовая работа [1,2 M], добавлен 05.11.2012Составляющие протокольного стека OSI. Сетевые топологии и основные среды передачи сигнала. Анализ и определение ошибок и аварий в компьютерных сетях. Построение локальной вычислительной сети на базе EtherNet 10 BaseTX, протокола Bluetooth и WiFi.
лекция [128,1 K], добавлен 15.04.2014Изучение подсистемы ввода-вывода и файловой системы ОС семейства Windows NT. Анализ особенностей работы приложения TotalCommander и его взаимодействия с файловой системой и подсистемой ввода-вывода. Взаимодействие TotalCommander с сетевыми адаптерами.
лабораторная работа [1,1 M], добавлен 12.06.2012Выбор инструментальной среды для разработки базы данных. Подсистема сбора, обработки и загрузки данных. Укрупненный алгоритм разрабатываемой информационной системы. Формирование области запросов базы, интерфейс ввода и редактирования входных данных.
курсовая работа [2,2 M], добавлен 25.12.2012Характеристика, разновидности, архитектура процессоров. Понятие интерфейса, описание видов шин, внешних запоминающих устройств, особенности конструкции. Специфика файловой системы устройства подсистемы ввода/вывода, достоинства, недостатки, база данных.
курс лекций [747,0 K], добавлен 24.06.2009