Лекция
Привет, сегодня поговорим про языки параллельного программирования сравнение erlang chapel презентация, обещаю рассказать все что знаю. Для того чтобы лучше понимать что такое языки параллельного программирования сравнение erlang chapel презентация , настоятельно рекомендую прочитать все из категории Высоконагруженные проекты.Паралельные вычисления. Суперкомпьютеры. Распределенные системы.
Специальные комментарии: внедрение дополнительных директив для компилятора, использование данных директив в процессе написания программы для указания компилятору параллельных участков программы. Использование спецкомментариев не только добавляет возможность параллельного исполнения, но и полностью сохраняет исходный вариант программы. Если компилятор ничего не знает о параллелизме, то все спецкомментарии он просто пропустит, взяв за основу последовательную семантику программы.
Пример: стандарт OpenMP
для Fortran - !$OPM
для C – директива #progma opm
Расширение существующих языков программирования (ЯП): разработка на основе существующих ЯП новых языков, путем добавления набора команд параллельной обработки информации, либо модификации системы компиляции и выполнения программы.
Пример: язык High Performance Fortran (HPF)
Разработка специальных языков программирования: использование ЯП годных для использования только для многомашинных и многопроцессорных комплексов. В данных ЯП параллелизм заложен на уровне алгоритмизации и выполнения программы.
Пример: языки Occam (для программирования транспьютерных систем), Sisal (для программирования потоковых машин), Норма (декларативный язык для описания решения вычислительных задач сеточными методами)
Использование библиотек и интерфейсов, поддерживающих взаимодействие параллельных процессов: подготовка программного кода на любом доступном языке программирования, но с использованием интерфейса доступа к свойствам и методам, обеспечивающим параллельную обработку информации.
Программист сам явно определяет какие параллельные процессы приложения в каком месте программы и с какими процессами должны либо обмениваться данными, либо синхронизировать свою работу. Об этом говорит сайт https://intellect.icu .
Такой идеологии следуют MPI и PVM Существует специализированная система Linda, добавляющая в любой последовательный язык лишь четыре дополнительные функции in, out, read и eval, что и позволяет создавать параллельные программы
Использование подпрограмм и функций параллельных предметных библиотек в критических по времени счета фрагментах программы: использование дополнительных модулей, подключаемых к стандартному ЯП в процессе подготовки программного кода, позволяющие обеспечить параллельное функционирования программы только для некоторого набора алгоритмов. Весь параллелизм и вся оптимизация спрятаны в вызовах, а пользователю остается лишь написать внешнюю часть своей программы и грамотно воспользоваться стандартными блоками.
Примеры библиотек: Lapack, Cray Scientific Library, HP Mathematical Library
Пример: пакет GAMESS для выполнения квантово-химических расчетов
Примеры языков программирования и надстроек
1.OpenMP
2.High Performance Fortran (HPF)
3.Occam, Sisal, Норма
4.Linda, Massage Passing Interface (MPI)
5.Lapack,
Комментарии
Оставить комментарий
Высоконагруженные проекты.Паралельные вычисления. Суперкомпьютеры. Распределенные системы
Термины: Высоконагруженные проекты.Паралельные вычисления. Суперкомпьютеры. Распределенные системы