На правах рекламы:
ISSN 0236-235X (P)
ISSN 2311-2735 (E)

Авторитетность издания

ВАК - К1
RSCI, ядро РИНЦ

Добавить в закладки

Следующий номер на сайте

2
Ожидается:
16 Июня 2024

В Вычислительном центре им. А.А. Дородницына ФИЦ ИУ РАН совместно с Национальным исследовательским университетом «Московский энергетический институт» исследовались средства параллельного программирования в современных математических пакетах.

05.07.2016

В последние годы для решения множества трудновычислимых задач стали применяться методы и средства параллельного программирования. Широко известны модели программирования в общей и распределенной памяти, позднее к ним добавились гибридные модели. Однако упомянутые средства чаще всего реализуются при достаточно низкоуровневом программировании, что требует значительной переделки исходного последовательного кода. Следует отметить, что немало математических расчетов выполняется не на алгоритмических языках (C/C++, Fortran), а в специализированных математических пакетах MATLAB, Maple, Mathematica, MathCad. Производители пакетов тоже задумались о реализации возможностей параллелизма в своих продуктах.

К 2016 году сложилась следующая картина.

Изначально возможности параллельного программирования в пакете Mathematica появились в 2001 г.. Для их обеспечения было выпущено дополнительное средство – Parallel Computing Toolkit (требовалась отдельная лицензия, но после выхода версии 7.0 в 2008 г. для работы на локальном компьютере лицензия уже не требуется). В пакете MATLAB возможности параллельного программирования появились в 2005 г. В 2009 г. о реализации средств параллельного программирования было заявлено в Maple. В среде Maple 13 было реализовано программирование в модели общей памяти. Однако средства именно параллельного программирования появились только в выпуске Maple 15 в 2011 г. Следует отметить, что независимые решения предлагались и ранее (см., например, Distributed Maple).

Пакет MathCad чрезвычайно долгое время никак не развивался в этом направлении. Только в версии MathCad Prime 2.0 (2012 г.) появились некоторые изменения: параллелизм на основе средств многоядерных процессоров обеспечивается за счет использования библиотеки Intel MKL. В данной работе рассмотрены средства параллельного программирования в пакетах MATLAB, Maple и Mathematica.

Средства параллельного программирования в MATLAB

До момента реализации функционала па- раллельного программирования производителем (компанией MathWorks) существовали различные подходы к решению.

Подробное описание дается в статье «Возможности параллельного программирования в математических пакетах», автор Чернецов А.М. (Вычислительный центр им. А.А. Дородницына ФИЦ ИУ РАН, Национальный исследовательский университет «Московский энергетический институт», Москва).