Программный комплекс представляет собой оптимизированный прямой решатель больших разреженных систем линейных алгебраических уравнений (СЛАУ) на многопроцессорных системах с общей памятью. Включен в Реестр российского ПО — N записи 18945 от 5.09.2023
Разреженные системы уравнений – это системы с матрицами коэффициентов, у которых число ненулевых элементов много меньше размера матрицы, а именно, число ненулевых элементов в строке значительно меньше числа столбцов в матрице. В зависимости от размера доступной памяти, размерности матриц решаемых систем могут достигать несколько миллионов, с несколькими сотнями миллионов ненулевых элементов.
Такой объем данных возникает в задачах связанных с численным моделированием физических процессов (теплоперенос, акустические, упругие и электромагнитные волновые процессы), математическим моделированием в различных сферах (экономика, логистика, медицина), при проведении инженерных расчетов в системах CAD/CAE.
ПК USPARS может использоваться как независимая вычислительная программа или как вычислительное ядро в прикладных ИТ-системах.
ПК USPARS использует весь набор вычислительных приемов, доказавших свою эффективность для решения СЛАУ с разреженными матрицами коэффициентов – это перестановки разных видов (matching, pivoting, и др.), балансировка коэффициентов, итерационное уточнение, глобальные перестановки.
Разработан ряд собственных оригинальных компонент. Так, например, для отыскания перестановок матриц с целью снижения заполненности треугольных факторов разработана компонента Atlant, где используется комбинированный алгоритм на основе многоуровневого метода вложенных сечений и эффективного авторского метода переупорядочивания подграфов малого размера.
Для повышения производительности вычисления в USPARS распараллелены с использованием средств библиотеки OpenMP. Это позволяет ускорить работу при увеличении количества вычислительных ядер. В программе можно самим задавать число используемых omp-потоков.
Пакет доступен в двух модах:
In-Core (IC) – в ней все промежуточные данные в процессе вычислений размещаются в оперативной памяти вычислительной системы
Out-Of-Core (OOC) – в ней возможно сохранение части промежуточных данных на диске.
Использование дисковой памяти в ООС моде позволяет несколько увеличить размеры СЛАУ, доступных для решения, однако из-за включения в процесс решения обмена данными между оперативной памятью и диском растет время вычислений по сравнению с IC модой.
Базовая версия — для нее несколько раз в год выходят новые релизы.
Заказные версии — строятся на основе базовой версии, и включают в себя дополнительный функционал.
Расчеты СЛАУ на заказ — этим мы тоже занимаемся.
Информацию о стоимости можно посмотреть здесь.
ПК USPARS доступен по академической лицензии студентам и преподавателям российских университетов, в программы обучения которых входит математическое моделирование реальных процессов. Лицензия предоставляется на год и включает в себя базовую техническую поддержку со стороны разработчиков.
С октября 2023 серверная версия ПК UPSPARS, размещена в виде модуля на мощностях сибирского суперкомпьютерного центра (ССКЦ) и доступна его пользователям. Все исследователи, имеющие доступ на ССКЦ, могут загрузить ее на любой вычислительный узел.
Для подключения модуля достаточно выполнить команду:
module load uspars/latest
При этом на экран выведется информация по сборке примеров, их запуску и ссылка на руководство пользователя ПК USPARS.
ПК USPARS имеет руководство пользователя., подробно описывающее весь набор его функциональных возможностей.
Чтобы начать пользоваться ПК, достаточно воспользоваться инструкцией по установке и инструкцией по эксплуатации.
Наиболее известными аналогами решателя USPARS являются пакеты MKL PARDISO, MUMPS, PARDISO, SuperLU, TAUCS, UMFPACK.
Иногда разреженными называют матрицы, в которых использование информации о структуре ненулевых элементов приводит к выигрышу в производительности алгоритмов по решению систем линейных уравнений с соответствующими матрицами коэффициентов.
Для хранения разреженных матриц существуют специальные структуры, которые позволяют минимизировать объем требуемой памяти для таких матриц и обеспечить эффективную работу с ними. USPARS использует для хранения и обработки разреженных матриц формат CSR (compressed sparse row). В USPARS входные матрицы для вычислений должны подаваться в таком формате, а в качестве результата выдается плотный вектор решений.
Для решения системы линейных уравнений
A X = F
с разреженной матрицей коэффициентов A размера NxN и плотной матрицей F размера Nxk выполняется разложение матрицы A в произведение нескольких матриц, являющихся нижне- или верхнетреугольными и диагональными, с последующим решением полученных систем уравнений с треугольными матрицами. В USPARS используются несколько видов треугольной факторизации разреженных матриц, конкретный вид определяется принадлежностью матрицы тому или иному классу, в зависимости от свойств симметрии и положительной определенности матрицы коэффициентов.
USPARS позволяет решать системы с одинарной и двойной точностью. Для хранения матриц, заданных с двойной точностью, требуется в два раза больше памяти, а для вычислений может потребоваться в два раза больше времени. Но использование двойной точности позволяет более точно выполнять арифметические операции, что может быть существенно для матриц с большими числами обусловленности.
Достижения команды УНИПРО в разработке программного пакета USPARS освещаются в докладах на международных симпозиумах и российских научных мероприятиях. Можно посмотреть последнюю презентацию, сделанную на семинаре ИВМиМГ СО РАН в ноябре 2023 г.