Аннотация:
Во многих прикладных областях необходимо выполнять символьно-численные расчеты с данными большого объема. Примерами таких областей являются робототехника, распознавание речи, распознавание графической информации, автоматизация производства и другие. Системы символьных вычислений, их так же называют системами компьютерной алгебры, активно развиваются с конца восьмидесятых годов. Хорошо известными системами являются Mathematica, Maple, Reduce и многие другие. Почти все эти системы не были ориентированы изначально ни на масштабные математические объекты, ни на многопроцессорные кластеры. Система Form является единственным исключением. Эта система была изначально задумана для оперирования объектами, превышающими по размеру оперативную память. Такие объекты размещаются на жестком диске. В статье дается описание алгоритмов для тех инструментов системы компьютерной алгебры MathPartner, которые предназначены для взаимодействия с вычислительным кластером. Приводится описание алгоритма работы сокетного сервера, являющегося связующим звеном между MathPartner и некоторой супер ЭВМ, который обеспечивает исполнение параллельных программ на кластере. Подробно объясняется механизм, который позволяет абстрагироваться от конкретной супер ЭВМ и установленной на нее PBS, работая исключительно с веб-интерфейсом MathPartner. Кроме запуска готовых программ, описываемый сокетный сервер дает возможность запускать пользовательские программы, отправляемые на вычислительный кластер в виде zip-архива через веб-интерфейс. В статье даются примеры использования уже реализованных параллельных алгоритмов, которые входят в состав веб сервиса MathPartner. Некоторые из параллельных программ MathPartner реализованы с помощью парадигмы «DDP» (dynamic decentralized parallelization) - подхода, позволяющего написать эффективную параллельную программу для работы с неоднородными данными, такими как разреженные матрицы. В статье показаны примеры использования DDP-программ, интегрированных в MathPartner.