Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемПетр Черников
1 М.О. Бахтерев, П.А. Васёв ИММ УрО РАН, Екатеринбург XII Международный семинар «Супервычисления и математическое моделирование» РФЯЦ-ВНИИЭФ, Саров 2010
2 Высокопроизводительные системы Системы с общей памятью (быстрый обмен между потоками) Параллельные среды (кластер с хорошими внутренними сетевыми связями) Распределённые среды (медленные сетевые связи между группой кластеров/узлов)
3 Вопрос технологий HPC программирования - открыт Не смотря на наличие MPI OpenMP Почему? Сложные технологии. А если необходима оптимальность – то крайне сложные. Не учитывают современные тенденции (GPGPU, грид, облачные вычисления).
4 Предпринимаются попытки Автоматическое и автоматизированное распараллеливание (DVM) Технологии решения определённых классов задач (Map/Reduce) Инструменты упрощения параллельного программирования (TBB) Некоторые подобные решения предлагают смену парадигмы вычислений.
5 Модель потока данных (data flow) A D B BC E Input Output B Открытый вопрос - конкретная интерпретациия и реализации этой модели. Размер блоков (инструкции...этапы вычислений). Язык описания потока (расширение, новые языки). И так далее (множество деталей).
6 Предлагаемая методика Базовые элементы: Хранилище – содержит именованные данные. Имена: «x15», «matr_220_517». Данные: бинарные. Задачи – программы, которые читают данные из хранилища, и пишут в хранилища новые данные. Правила – определяют условия и параметры запуска задач.
7 Правила Каждое правило содержит в себе: Список имён данных, которые необходимы для выполнения задачи. Имя задачи, которую необходимо запустить. Список соответствия глобальных имён данных локальным именам. Действия при успешном завершении. Правило срабатывает, когда все исходные данные готовы.
8 Высокопроизводительная программа: Набор вычислительных программ Файл запуска – с описанием начальных данных и правил
9 Процесс выполнения Запуск файла начальных данных и правил Поиск правил, готовых к исполнению Поиск подходящих ресурсов для готовых правил Размещение (части) правил на ресурсах В результате исполнения правил порождаются новые данные => новые готовые правила и свободные ресурсы
10 Пример счетной программы #include "ride.h int main(int argc, char *argv[]) { int n,k; if (ride_get(in,&n,sizeof(n)) != RIDE_GOOD) { return -1; } // ************ eval k ********************** k = n + 1 ride_put( out", ride_data(&k,sizeof(k)) ); return 0; }
11 Пример файла запуска Ride.put("var1",1 ) for i in (1..10) do r = Rule.new r.feed("var#{i} ", in") r.mask("var#{i+1}",out") r.run("sample1/release/sample1.exe") r.save end Ride.run puts Ride.get("var11")
12 Пример работы Видео-файл
13 Преимущества методики Разделение уровней вычисления и взаимодействия. Произвольные языки программирования вычислительных программ (с внедренными функциями get и put) Отсутствие ограничений на внутреннюю сложность вычислительных программ. Возможность участия в рамках одного вычисления программ различных платформ (ОС, языки, процессоры и GPGPU).
14 Преимущества методики Возможность подключать и отключать вычислительные ресурсы «на лету». Встроенная поддержка контрольных точек (состояние хранилища). Возможность полностью остановить счёт и в будущем продолжить его. Перспективы умного размещения правил, в том числе на основе статистики предыдущих запусков. Поддержка общей памяти. В итоге – поддержка всех уровней HPC-сред и их комбинаций.
15 Реализация Runner Run Side 1 Run Side 2 Run Side N … Runvisor Calc 1 Eval 2 Schet 3 Runvisor Prog 4 Storage
16 Первые программы Поиск дискретных логарифмов Автор: Илья Альбрехт Эффект: сокращение коммуникаций с 500 строк MPI- кода до 100 строк RIDE-кода Умножение матриц Автор: Михаил Бахтерев Эффект: множество идей по вопросу упрощения языка правил RIDE
17 Реализация Runner Run Side 1 Run Side 2 Run Side N … Runvisor Calc 1 Eval 2 Schet 3 Runvisor Prog 4 Storage
18 Распределённое хранилище данных Неодинаковые по мощности узлы Неоднородные связи между узлами Подключение и отключение на лету Явное управление репликами Встроенное обнаружение готовых правил Parallel FS, SQL Cluster, DHT, Kademlia/P2P Идея обходчиков и заявок. В разработке.
19 - информация о разработке системы XII Международный семинар «Супервычисления и математическое моделирование» РФЯЦ-ВНИИЭФ, Саров 2010
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.