Вы находитесь на странице: 1из 5

АРХИТЕКТУРА и СТРОИТЕЛЬСТВО программное обеспечение

ПРИМЕНЕНИЕ
МНОГОФРОНТАЛЬНОГО
МЕТОДА
В ПРОГРАММЕ

SCAD
ДЛЯ АНАЛИЗА БОЛЬШЕРАЗМЕРНЫХ
РАСЧЕТНЫХ МОДЕЛЕЙ ЗДАНИЙ
И СООРУЖЕНИЙ
рограмма SCAD (www.scad Способам повышения эффективнос ции с целью эффективного распа

П soft.com) широко приме


няется для расчета
пространственных конеч
но элементных (МКЭ) моделей зда
ний и сооружений на статику, дина
ти упомянутого многофронтального
метода и посвящается эта статья.
Напомним, что факторизацией
[1, 2, 3] называется процедура разло
жения K=LU заданной матрицы K
раллеливания операций в параллель
ных вычислительных системах. По
скольку эта статья ориентирована
исключительно на пользователей
персональных компьютеров, ограни
мику и устойчивость. Такие расчеты в произведение верхней и нижней чимся рассмотрением только перво
связаны с проблемой решения сис треугольных матриц L,U. Если мат го аспекта упорядочения.
тем линейных алгебраических урав рица K – симметричная, то целесо Решение задачи оптимизации ко
нений с симметричной разреженной образно применять разложение личества заполнений в точной поста
матрицей коэффициентов. Учитывая K=LDLT или K=LSLT , где L,D,S – новке требует не меньших вычисли
тенденцию неуклонного роста раз нижняя треугольная матрица, диаго тельных усилий, чем решение
мерности задач (порядок систем наль факторизованной матрицы и данной МКЭ задачи со случайным
МКЭ уравнений достигает 200 000 диагональ знаков (то есть массив, со образом расставленными уравнения
600 000 уравнений и более), а также стоящий из ± 1). ми (отсутствие упорядочения). По
тот факт, что при поиске приемлемо Ответственными моментами при этому на практике применяют эври
го конструкторского решения при создании эффективного прямого ме стические алгоритмы упорядочения.
ходится многократно вносить изме тода решения систем МКЭ уравне Начиная с 70 х годов и до середины
нения в расчетную модель и, ний являются упорядочение, рацио 90 х в МКЭ программах как правило
следовательно, каждый раз выпол нальная работа с КЭШ памятью и применялись профильные методы
нять МКЭ анализ заново, возникает шиной, а также организация работы решения систем линейных алгебраи
потребность разработки и внедрения с данными. ческих уравнений с разреженными
в расчетные программные комплек Упорядочение состоит в перену матрицами [2, 3]. При этом задачей
сы высокоэффективных методов ре мерации уравнений и обычно пре упорядочения являлась минимиза
шения систем МКЭ уравнений. следует две цели. Первая – умень ция ширины профиля. Чаще всего
Рассматривается многофронталь шить количество заполнений, для этой цели применялся обратный
ный метод факторизации разрежен возникающих при факторизации ма алгоритм Катхилла Макки (RCM [2,
ных матриц, внедренный в програм трицы. Под заполнениями понима 3]), а позднее – более эффективный
му SCAD версии 11.1. В отличие от ются ненулевые элементы, возника метод Слоана [9].
версии 7.31 эта версия программы не ющие в матрице при ее факто С середины 90 х годов в коммер
содержит ограничений на количество ризации на позициях нулевых эле ческие МКЭ программы интенсив
узлов и конечных элементов расчет ментов исходной матрицы. Количе но внедряются методы, тонко учиты
ной модели, что предъявляет высо ство заполнений существенно зави вающие разреженную структуру
кие требования к эффективности мо сит от того, в каком порядке матрицы жесткости (sparse direct
дуля решения системы уравнений расставить уравнения [2]. solvers). При этом чаще всего приме
(решателя) – снятие указанных огра Другая цель – разделить данные няется упорядочение алгоритмом
ничений приводит к значительному на примерно равнозначные с точки минимальной степени и методом
росту размерности решаемых задач. зрения вычислительных затрат пор вложенных сечений [2, 3, 11].

74 CADmaster 5’2005
программное обеспечение АРХИТЕКТУРА и СТРОИТЕЛЬСТВО

на номер рисунка, изображающего


расположение ненулевых элементов
верхней треугольной матрицы при
заданном методе упорядочения.
Данный пример показывает, что
при удачном выборе метода упорядо
чения объем перерабатываемой ин
формации удается уменьшить на по
рядок и более (рис. 2 8).

Рис. 1

Алгоритм минимальной степени тод вложенных сечений [6]. Приме Рис. 2. Отсутствие упорядочения
на каждом шаге факторизации в ка нение смешанного подхода, в кото
честве ведущего выбирает то уравне ром сначала несколько шагов выпол
ние, которое содержит наименьшее няется методом вложенных сечений,
количество ненулевых коэффициен а внутри каждой подконструкции ис
тов. пользуется упорядочение алгорит
Метод вложенных сечений рассе мом минимальной степени, в сочета
кает исходную конструкцию на две нии с работой на огрубленном графе
(или более) подконструкции, при смежности позволило получить ус
мерно равных по количеству узлов. тойчивый по эффективности для
Затем для каждой из подконструк широкого класса конструкций мно
ций процедура вложенных бисекций гоуровневый метод упорядочения
повторяется снова и т.д. В результате [13, 14].
получается последовательность ре Таблица 1 иллюстрирует эффек
курсивно вложенных подсистем. тивность различных методов упоря
Оказалось, что для вытянутых в дочения для расчетной модели, пред
одном направлении конструкций ставленной на рис. 1. Расчетная
лучшие результаты обычно дает алго модель содержит 19 409 узлов, 19 456
ритм минимальной степени, а для элементов и 115 362 уравнения. В Рис. 3. Упорядочение RCM
конструкций, подобных кубу, – ме первой колонке приводятся ссылки

Таблица 1
Номер Тип упорядочения Количество Объем
рисунка ненулевых элементов матрицы,
в факторизованной Мb
матрице, Мb
2 Отсутствие упорядочения 490 366 701 3741
3 Обратный алгоритм КатхиллаМакки RCM 212 143 113 1618
4 Алгоритм Слоана 181 750 005 1386
5 Метод параллельных сечений PSM 45 281 385 345
6 Метод вложенных сечений ND 84 522 753 644
7 Алгоритм минимальной степени QMD [2] 27 501 777 209
7 Алгоритм минимальной степени MMD [11] 25 142 373 191
8 Многоуровневое упорядочение [13, 14] 25 341 381 193

Рис. 4. Упорядочение по Слоану

CADmaster 5’2005 75
АРХИТЕКТУРА и СТРОИТЕЛЬСТВО программное обеспечение

Рис. 5. Упорядочение PSM Рис. 6. Упорядочение ND Рис 7. Упорядочение QMD, MMD

на уровень q=1/3. А это означает, что Внимание исследователей при


они обречены выполняться со скоро влекли многофронтальные методы
стью медленной шины, осуществля [7, 8, 9], которые позволяют исполь
ющей пересылку данных "память – зовать эффективное упорядочение.
кэш – процессор", а не быстрого Во фронтальном методе [12] сборка и
процессора. Совсем иначе дело об исключение полностью собранных
стоит с алгоритмом блочного умно уравнений ведутся параллельно. Ма
жения матриц. Если размеры блока трица жесткости системы в явном
таковы, что можно одновременно виде не собирается, а вместо этого
разместить в кэше три блока, то про добавляется поэлементно. Как толь
изводительность алгоритма подни ко очередной узел оказывается со
мается до уровня q ~ √ ⎯⎯М , где М – бранным, ассоциированные с ним
размер кэша [1]. Следовательно, для уравнения сразу исключаются. Гово
создания высокопроизводительной рят, что узел собран, если все элемен
Рис. 8. Многоуровневое упорядочение вычислительной системы надо избе ты, примыкающие к этому узлу, уже
гать алгоритмов с уровнем произво включены в ансамбль, коэффициен
дительности q#1 и стремиться так ор ты уравнений, связанные с этим уз
Большое значение имеет способ ганизовать вычислительный процесс, лом, полностью собраны и добавле
ность алгоритма факторизации обес чтобы работать только с алгоритмами ние последующих конечных
печить высокопроизводительный ре последнего типа (q ~ √
⎯⎯М). Примени элементов не будет вносить в них ни
жим вычислений, для оценки тельно к методу факторизации мат каких изменений.
производительности которого обыч рицы это означает переход от класси В результате факторизация про
но используется показатель q = ƒ/m ческой факторизации по строкам (по изводится в плотной матрице отно
(ƒ – количество арифметических столбцам) к блочной факторизации, сительно небольшой размерности –
операций, m – количество пересы позволяющей удержать уровень про фронтальной матрице, состоящей из
лок данных между оперативной па изводительности порядка q ~ √ ⎯⎯М . полностью собранной части уравне
мятью и кэшем процессора). Чем вы Высокая производительность ме ний и не полностью собранной (так
ше производительность алгоритма, тода решения системы МКЭ уравне называемый незавершенный фронт).
тем больше значение q. Например, ний будет обеспечена только тогда, Полностью собранные уравнения
для алгоритма умножения вектора на когда эффективное упорядочение и сразу исключаются, а соответствую
вектор показатель эффективности высокопроизводительный режим ра щая часть матрицы записывается на
равен 1/3 (учитываются только опе боты с процессором сочетаются со диск. Далее добавляется очередной
рации умножения, поскольку время способностью метода эффективно ра конечный элемент и снова исключа
выполнения одного умножения мно ботать с данными, размещенными как ются собранные уравнения.
гократно превышает время выполне в оперативной памяти, так и на диске. Если на расчетной модели выде
ния операций сложения вычита Прямые методы для разреженных ма лить узлы, ассоциированные уравне
ния). Для алгоритма умножения триц, использующие сжатый формат ния для которых образуют на данном
матрицы на вектор, для классическо Шермана [2, 3], эффективно работают шаге решения фронтальную матри
го алгоритма исключения Гаусса в до тех пор, пока данные удается раз цу, то эти узлы составят фронт. В
плотной матрице и для классическо местить в оперативной памяти ком процессе решения задачи фронт дви
го умножения матриц – q=1 (см. [1]). пьютера. Поскольку виртуализовать жется по узлам МКЭ модели. Отме
Если при этом две строки матрицы эти методы весьма проблематично, их тим, что при рациональном выборе
невозможно разместить в кэше, то применение ограничивается относи очередности подачи конечных эле
указанные алгоритмы "скатываются" тельно небольшими задачами. ментов на сборку можно добиться

76 CADmaster 5’2005
программное обеспечение АРХИТЕКТУРА и СТРОИТЕЛЬСТВО

сия 5). Дальнейшее развитие метода


шло в направлении разработки внут
ренней системы виртуализации хра
нения незавершенных фронтов (ран
ние релизы SCAD версии 7.31),
улучшения методов и алгоритмов
упорядочения (SCAD, осень 2004 го
да) и перехода к факторизации во
фронтальной матрице, основанной
на блочном LSLT разложении, обес
печивающем высокопроизводитель
ный режим (q ~ √⎯⎯М), вместо по
столбцового LU разложения (q=1/3)
(SCAD, март 2005 года).
Проиллюстрируем эффектив
ность введенных усовершенствова
Рис. 9 ний на примерах двух больших задач.
Пример 1. Рассматривается пред
ставленная на рис. 9 модель много
того, что размер фронтальной матри ливалось тем, что фронтальная мат этажного здания, содержащая 195 585
цы будет относительно небольшим. рица максимального размера (мак узлов и 204 067 элементов (1 171 104
При решении задачи достаточно ис симальный фронт) должна помес уравнения).
пользовать алгоритмы и программы титься в оперативной памяти Таблица 2 иллюстрирует возрас
для плотных матриц. компьютера. Это ограничение явля тание производительности много
Если в процессе факторизации ется принципиальным для фрон фронтального метода [4, 5, 10] при
одновременно образуется несколько тального (многофронтального) мето улучшении качества упорядочения и
фронтов, то метод называют много да и сохраняется для всех по переходе от классической фактори
фронтальным. Такой подход оказы следующих версий. "Продвинуться" в зации во фронтальной матрице к
вается эффективным как для парал область задач большей размерности блочной, обеспечивающей высоко
лельных вычислений, так и для можно только двумя путями: нарас производительный режим вычисле
обычных компьютеров. тить оперативную память компьюте ний. В колонке 1 приведены данные
Реализованный в программе ра или использовать такое упорядо для первых версий метода, реализо
SCAD многофронтальный метод [4, чение, которое приводит к меньшей ванных в программах Robot
5, 10] работает с любым упорядоче размерности максимального фронта. Millennium и SCAD (версия 7.31,
нием и является одной из возможных Второе ограничение связано с тем, младшие релизы). В колонке 2 собра
реализаций такого подхода. Первая что все незавершенные фронты хра ны результаты, полученные при ис
версия этого метода, работающая нились в виртуальной памяти адрес пользовании многоуровневого упо
только с двумя методами упорядоче ного пространства процесса, что су рядочения (LU факторизация), а в
ния (методом вложенных сечений и щественно ограничивало размер колонке 3 – при использовании как
алгоритмом минимальной степени ность решаемой задачи. многоуровневого упорядочения, так
QMD [2]), имела два ограничения на Эта версия была реализована в и LSLT факторизации во фронталь
размерность задачи. Первое обуслав программе Robot Millennium (вер ной матрице в блочном (высокопро
изводительном) режиме.
Суммарный эффект – сокраще
Таблица 2 ние времени факторизации матрицы
Упорядочение/ QMD Многоуров Многоуров RCM/про жесткости системы примерно в 5,5
метод факторизации [22]/LU невое/LU невое/LSLT фильный метод
раза по сравнению с первыми верси
Столбец 1 2 3 4
ями метода. В четвертой колонке
Время решения 5 ч 44 м 3 ч 29 м 1 ч 08 м ~119 ч
приведены результаты решения зада
Количество ненулей
в матрице, Mb 3246 2694 2694 21606 чи традиционным профильным ме
тодом с упорядочением по обратному
алгоритму Катхилла Макки (RCM).
Исследования выполнены на ком
пьютере средней производительности
ПК Pentium III (CPU 1266 MHz,
Таблица 3
RAM 1024 Mb).
Упорядочение/ Метод вложенных Многоуров Многоуров
Пример 2. Рассматривается под
метод факторизации сечений [2]/LU невое/LU невое/LSLT крепленная круговая тонкостенная
Столбец 1 2 3 цилиндрическая оболочка (рис. 10).
Время решения 9 ч 51 м 6 ч 40 м 3 ч 46 м МКЭ модель включает 304 200 узлов
Количество ненулей в матрице, Mb 5216 4441 4441 и 300 300 элементов (1 819 800 урав
нений). Поскольку исследуются осо

CADmaster 5’2005 77
АРХИТЕКТУРА и СТРОИТЕЛЬСТВО программное обеспечение

бенности динамического поведения решения больших конечно эле


конструкции при сопряжении об ментных задач строительной ме
НОВОСТИ шивки и ребер в дискретных точках, ханики. – В кн. Перельмутер
моделирующих точечную сварку, не А.В., Сливкер В.И. Расчетные
Компания Consistent Software нача
ла поставки СПДС GraphiCS 3.0 LT обходимо рассмотреть конечно эле модели сооружений и возмож
ментную модель с густой сеткой (ле ность их анализа. – Издание вто
Компания Consistent Software вый рисунок). Поскольку на такой рое. – К.: Сталь, 2002. – с. 552
объявила о начале поставок СПДС сетке трудно что либо разобрать, то 569.
GraphiCS 3.0 LT. Проектировщи для удобства визуального восприя 6. Ashcraft C., Liu J. W. H. Robust
кам предоставляется возможность
автоматизировать отрисовку ру тия на рисунке справа приведена мо Ordering of Sparse Matrices Using
тинных и графически насыщен дель с редкой сеткой. Результаты Multisection. // Technical Report
ных элементов рабочих чертежей, представлены в таблице 3. CS 96 01, Department of Computer
а также в автоматическом режиме Описанный в статье блочный Science, York University, Ontario,
создавать спецификации, ведомо многофронтальный метод фактори Canada, 1996.
сти и таблицы. Производитель
ность труда при использовании зации разреженных матриц прошел 7. Duff I.S. Parallel implementation
СПДС GraphiCS возрастает в не испытание большим количеством of multifrontal scheme //Parallel
сколько раз. самых разнообразных задач, пред Comput. – 1986. – 3 – P. 193 204.
Данная версия программного ставленных многочисленными поль 8. Duff I.S., Reid J.K. The multifrontal
продукта предназначена для рабо зователями SCAD, и зарекомендовал solution of indefinite sparse symmet
ты с AutoCAD 2006 LT. Функцио
нальные возможности СПДС себя как высокоэффективный и на ric linear equations. //ACM Trans.
GraphiCS 3.0 LT ничем не отлича дежный решатель. Math. Software. – 1973. – 9 –
ются от возможностей полной вер P. 302 325.
сии, а совместное использование Литература 9. Duff I.S., Reid J.K., Scott J.A. The
AutoCAD 2006 LT и СПДС 1. Деммель Дж. Вычислительная use of profile reduction algorithms
GraphiCS 3.0 LT является наиболее
экономичным решением для авто линейная алгебра. Теория и при with a frontal code. //Int. J. Numer.
матизации рабочего места проек ложения. М.: Мир, 2001. – 429 с. Meth. Eng. 1989 – 28 – P. 2555
тировщика. Тем не менее при вы 2. Джордж А., Лю Дж. Численное ре 2568.
боре базовой платформы следует шение больших разреженных сис 10. Fialko S.Yu., Kriksunov E.Z. and
помнить, что AutoCAD LT, в отли тем уравнений. М.: Мир, 1984. – Karpilovskyy V.S. A sparse direct
чие от полной версии AutoCAD, не
располагает инструментами в сле 333 с. multi frontal solver in SCAD soft
дующих ключевых областях: 3. Писсанецки С. Технология разре ware. Proceedings of the CMM
· менеджер подшивок (Sheet Set
Manager);
женных матриц. М.: Мир, 1988. –
411 с.
2003. – Computer Methods in
Mechanics June 3 6, 2003, Gliwice,
· работа с динамическими бло
ками;
4. Фиалко С.Ю. К исследованию Poland. P. 131 132.

·· адаптация (LISP, ARX, VBA);


презентационная графика;
напряженно деформированного
состояния тонкостенных оболо
11. George, A., Liu, J. W. H. The
Evolution of the Minimum Degree
· управление
оформления;
стандартами чек с массивными ребрами //
Прикл. механика, 2004. – Т. 40.
Ordering Algorithm, SIAM Rev. 31,
1 19 (March 1989).
·· кэширование файлов;
сетевое лицензирование;
№ 4, с. 84 92. 12. Irons B. A frontal solution of pro

· трехмерное моделирование. 5. Фиалко С.Ю. Сопоставление


прямых и итерационных методов
gram for finite element analysis
//Int. J. Numer. Meth. Engrg. –
1970. – 2 – P. 5 32.
13. Karypis G., Kumar V., A Fast and
High Quality Multilevel Scheme for
Partitioning Irregular Graphs,
Technical Report TR 95 035,
Department of Computer Science,
University of Minnesota,
Minneapolis, 1995.
14. Karypis G., Kumar V. METIS:
Unstructured Graph Partitioning
and Sparse Matrix Ordering
System, Technical report,
Department of Computer Science,
University of Minnesota,
Minneapolis, 1995.

Сергей Фиалко
д.т.н.
Тел.: (38 044) 2497193
Еmail: fialko@scadsoft.com
Рис. 10

78 CADmaster 5’2005