templet:разработка_приложений_без_использования_шаблона
                Это старая версия документа!
Разработка приложений без использования шаблона
Параллельное обработка данных может быть реализована множеством способов. В том числе и способом разделения/объединения данных внешним приложением, что является наиболее простым в реализации т.к. позволяет использовать, по сути, последовательные приложения. При разработке параллельных приложений может использоваться несколько подходов:
- автоматическое распараллеливание
- распараллеливание средствами языка
- распараллеливание с помошью библиотек
Сравнение средств разработки параллельных приложений
| Название | Метод | Возможность отладки | Платформы | Независимы от компилятора | Распределённое исполнение | 
|---|---|---|---|---|---|
| Intel Composer XE 2013 | Управляемая автоматическая параллелизация | Последовательного | Windows/*nix | нет | нет | 
| OpenMP | Расширение языка | Последовательного | Windows/*nix | нет | нет | 
| Microsoft Concurrency Runtime | Библиотека шаблонов | Последовательного | Windows | нет | нет | 
| Intel Threading Building Blocks | Библиотека шаблонов | Последовательного | Windows/*nix | да | нет | 
| Message Passing Interface | Обмен сообщениями. Синхронный запуск. | Параллельного | Windows/*nix | нет | да | 
| TempletSDK | Комбинированный | Последовательного и параллельного | Windows/*nix | да | да | 
Но у всех вышеперечисленных подходов имеются свою недостатки.
- автоматической параллелизацией трудно управлять
- языки высокого уровня, предоставляющие средства распараллеливания на уровне языка требют специальных компиляторов
- множество различных библиотек с несовместимым интерфейсом
Наиболее распространёнными инструментами являются OpenMP и MPI. Таким образом для рассмотрения выбраны:
- параллельный запуск последовательного приложения
- приложение разработанное с использованием OpenMP
- приложение разработанное с использование MPI
templet/разработка_приложений_без_использования_шаблона.1382989945.txt.gz · Последнее изменение: 2013/10/28 19:52 (внешнее изменение)
                
                