Chardash

Суперкомпьютер своими руками для расчетов в ansys и 3d приложениях

1 309 сообщений в этой теме

<noindex> Дело тонкое </noindex> тестирование. По крайней мере Джордж и Лю оценивают по умножениям. Это главный линейный член в оценке насколько помню. Просто сложение намного быстрее.

Естественно речь о 64 плавающих. Ну а о памяти, так это то что я писал ранее.

<noindex>http://www.netlib.org/lapack/</noindex>

<noindex> Вот где </noindex> Испе стоит поискать. Насколько помню там реализация алгоритмов из книги Джорджа и Лю. В конце концов несложно заменить цифровые ссылки на указатели. Я проделывал такое когда-то и на STL, чтобы не заморачиваться со всякими сортировками, поисками. Но разбираться в логике естественно придется. Но ведь и проверять легко по готовому. Заглушки временные делать. Когда-то хотел задействовать для этих дел matlab там вроде тоже есть интерфейс с си .

Хорошие были времена , дело интересное, но не прибыльное :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В риск архитектурах это и двадцать лет назад обещали, но не особо прижилось тогда. Не думаю, что на универсальных процессорах это так что один такт - одна команда. Мне и представляется, что можно работать с блоками по степеням свободы. Интересно написать или найти параметрические алгоритмы алгебры (шаблоны) как в stl как компромисс. Наверное где-нибудь уже есть, но я не знаю. В принципе несложно адаптировать существующие.

"Матрицы в CUDA перемножают блоками" - это то понятно, все-таки видеокарты, а там для преобразований координат что в direct что в Open GL конвейеры по перемножению матриц.

<noindex> Когда-то </noindex> поупражнялся с ними :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Это то понятно уже. Поэтому и выгодно клеточные параметрические алгоритмы использовать. Где-то была статья об этом у Джорджа. Но давно. Мне на нее ссылку Икрамов любезно присылал когда-то. Посмотрю, может найду откуда и может где в сети есть. Если интересно, конечно :unsure:

Там вместо деления обращение небольших матриц, а так все как обычно. Ну и умножения матричные вроде и сложения. В общем как обычно при разбиении на клетки. Если удасться сделать то размерность будет "соответствовать" числу узлов" или можно еще как-то сгруппировать и их :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Посмотрите в алгебре. Матрицу можно порезать на клетки достаточно произвольного размера не обязательно одинакового, но чтобы на диагонали были квадратные, чтобы их можно было обращать. Тогда все алгоритмы для чисел можно продолжить на эти клетки.

Это я подразумеваю под параметризацией алгоритмов как это сделано в stl

Отдельно описать операции умножения, сложения, вместо деления умножение на обратную. LDLt вполне можно реализовать, а как быть с корнем надо думать, может через разложение в ряд матричное...

Конечно как обычно при учете разреженности возникают лишние операции, но сокращается коричество всяких ссылок, индексов, упрощается перенумерация...

В пределе при размерности 1 будет обычный цифровой алгоритм. Поэкспериментировать по моему стоит, особенно с возможностью распараллеливания. Жаль времени нет...

"узловая матрица будет разреженной" - обычно она то полная. Можете просто посмотреть выделив их в своих кодах.

В пределах элемента матрицы обычно плотные, разреженность возникает тогда когда один узел не связан с другим через принадлежность к одному элементу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вы не выдумывайте, а думайте, или хотя бы почитайте. Не будьте как чукча только писателем. :rolleyes:

Вот первая статья от Икрамова:

George A, Rashwan Hamza Auxiliary storage methods for solving finite element systems SIAMJ Sci and Staist Comput 1985 , 6 #4 882-910

Потом другие. Времени нет. С клетками все же все очевидно. Почитайте приличную книжку по алгебре или расспросите студента матмеха первых курсов :unsure:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да никаких кустов. Просто это же тривиально. Не царское это дело манная каша. Порежьте в Mathematica на подматрицы да и проверьте на маленькой размерности. Типа 6*6 разбейте на клетки с 2*2 или 3*3 да и примените обычного Гаусса, потом LDLt для симметричной. Поймите как это работает вообще, а уж потом хватайтесь за программирование и разреженность. Не проделаете, так и алгоритмы не помогут. Тут же не обезьянья работа, тут понимать важнее чем знать и уж тем более просто иметь иформацию :)

Вот еще :

Liu An adaptive general sout-of-core Cholesky factorization scheme 1987 8 4 584-599

и

Stabrowski M.M. Two-level undexing in solution of linear equation megasystems Comput. Electr. Eng/ 1984 11 3-8

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"Что я прверю на матрице 6х6? " что разбиение ее на клетки и применение к клеточной матрице алгоритма Гаусса c переопределенными операциями алгебры приводит к тем же результатам :)

Что существует изоморфизм между числами и клетками с точки зрения алгоритмов.

Да я не прикрывался, а поделился информацией, которую он мне послал.

Если не хотите изучать алгебру, то просто разберитесь с вызовами готовых программ и не парьтесь. Рыба должна быть отдельно, а пиво отдельно, как и водка и мясо :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я устал от Вас :rolleyes:

Sapienti sat - а другим и нечего голову морочить. Забудем. -Intelligenti pauca :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

На то доцентура-профессура существует, чтобы манную кашу варить :rolleyes:

Зачем людей без работы оставлять?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Они едят. Как и прочие любители новизны да актуальности . Такова точка зрения постмодерна :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Общаемся по теме. А если и Практик_Прочнист будет общаться в стиле ИСПЫ - его тоже ждет неминуемое...

Дальнейшее обсуждение действий модераторов будет наказываться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Сначала надо разгрести завалы в сознании и избавиться от правового нигилизма. Иначе все бессмыслено. Какие могут быть суперкомпьютеры в несвободной стране ? :unsure:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Какие могут быть суперкомпьютеры в несвободной стране ? :unsure:

Эти суперкомпьютеры называются логарифмическая линейка. Это все уже было на вашем веку.

Так вот Федор у ИСПА действительно серьезное ускорение в решении уравнений. Уже скоро появится коммерческая версия. Буду тестировать.

Ваши предложения по клеткам ИСПА рассматривает. Сидит на губе и репу чешет.

А по суперкомпьютерам сейчас на подходе 8-ми ядерник от Интела. С 4-х канальной памятью. как раз под разреженный алгоритм.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Придется опять обновление техники отложить :unsure:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Придется опять обновление техники отложить :unsure:

До осени нужно подождать. А может и дольше. Пока все это в России появится. И чтобы цены немного упали.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нормально. Отдохну, пивка попью пока :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нормально. Отдохну, пивка попью пока :rolleyes:

Вы с ИСПА чем-то похожи.

Испа уже бросил разбираться с клетками и сидит пьет коньяк.

Привет вам от ИСПА, федор.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Наши люди в булочную на такси не ездят, только в вино-водочный. Только водка, только пиво и вода вокруг байдарки :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"У меня и сейчас супер-пупер комп. 16 процессоров и 32гига оперативки меня вполне устраивают. "

"Nastran TETRA10

2400 MHz

Time 64min 5s

NUMBER OF GRID POINTS = 343711"

Вова. Эту задачу ИСПА при мне только что решил за 30 минут. На ИНТЕЛ 930 4 ядра.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Обрадуйте меня, а борман что уже не модер? Или наконец то появился ещё один начальник?

Вот видите, дарагие, теперь же у нас есть вычислительное лего и мальчишки с 9 класса будут скоро считать разную дребедень с ужастно сложными определяющими отношениями - высосанными из пальца и никакого значения для практики не имеющими.

Давайте опубликуем смысл для всё большего увеличения количества элементов в моделях, которые относятся к неправильным расчётным схемам, давайте будем покупать домой машины, нужные только в НИИ морской геолого-разведке или в сейсмическом институте РАН. Загрузим своим мусором все 1000 камней - нет простите, не мусором, а той галиматьёй которую считают менеджеры САПР не для дела, а чтоб считать вообще что-нибудь.

А то, что для связи :wallbash: с реальностью нужны эксперименты и испытания, лучше забыть, ибо менеджеры САПР вряд ли оценивают насколько велика доля виртуальности в том, что видят на экране многопроцессорной гидры

Ой чёт я разошлась, аа забыла, это я всё от ужаса - я не против конечно супер!!! ого-го но хотелось бы понимать - тут собирают домашний игровой компьютер для сапр или рабочую лошадку?

Для того, чтобы вообще имело смысл дисскутировать по этой теме, важно понимать как отражается на производительности чисто многоядерность 1 процессорра - то бишь способность ядра ansys грамотно ускоряться в таких условиях и способность ansys ускорять решение слау на многих процессорах.

Ибо как я ужо писала - коды ansys всё ещё плоховато переписаны на параллельность - например контактные условия, несжимаемость и др - пока последовательны

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вау! Джиииии! САПР таки же создали? И уже продают, раз менеджеры САПРа есть?

Где очередь? Кто последний?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"тут собирают домашний игровой компьютер для сапр или рабочую лошадку?" - для лошади надо овес, то есть память. Тут дела посерьезнее - игровые потому, что на игровых видяхах, а любой постмодернист подтвердит что нет ничего важнее игры смысла, в этом то и смысл игры :unsure:

Все остальное жалкая прикладнуха и следствия то есть игровые отходы :rolleyes:

"например контактные условия" - так там же последовательная цепочка модификаций матрицы жесткости по определению. Нельзя начать следующего пока не закончено одно, а меняется только ограниченное число строк и столбцов <noindex> ограниченное число строк и столбцов </noindex>

Хотя можно и сначала собрать матрицу преобразований, а потом разом умножить справа-слева, но это приводит к большим затратам времени, как показали мои вычислительные эксперименты когда-то лет пятнадцать-двадцать назад.

А про несжимаемость и прочую порнографию прошу здесь не выражаться, для такого Борман отдельную тему завел :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Чего так разобиделись, доценты с академиком?

Ну и где конструктив? в последовательной обработке контактных условий? я вам про параллельность, а вы про последовательность расчёта

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Математику не обманешь. Не проблема сначала перемножить матрицы условий, в силу коммутативности расставляйте скобки как хотите, потом перемножайте на глобальную. Просто мои эксперименты когда-то показали, что из-за заполнения время растет быстрее чем при цепочке трансформаций то есть при окаймлении скобками последовательно. Типа (...(T2( T1 C T1t )T2t)...) было эффективнее чем (...T2 T1) C (...T2 T1)t

При распараллеливаниии возможно и наоборот можно найти схему. Но тут чисто экспериментально надо что-нибудь искать. Сделать несколько реализаций и нащупывать. Не царское это дело ерундой заниматься :unsure:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"У меня и сейчас супер-пупер комп. 16 процессоров и 32гига оперативки меня вполне устраивают. "

Это кластер или рабочая станция такая мощная? Какая конфигурация?...., если не секрет

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"У меня и сейчас супер-пупер комп. 16 процессоров и 32гига оперативки меня вполне устраивают. "

"Nastran TETRA10

2400 MHz

Time 64min 5s

NUMBER OF GRID POINTS = 343711"

Вова. Эту задачу ИСПА при мне только что решил за 30 минут. На ИНТЕЛ 930 4 ядра.

Присоединяюсь к вопросу. Опишите конфигурацию компа поподробней, плиз..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяюсь к вопросу. Опишите конфигурацию компа поподробней, плиз..

Сейчас на работе комп с процессором sandy bridge. В процессах показывает 8 ядер, гипертрейдинг. В общем, по сравнению с машиной дома - коре 2дуо е8400 прирост заметен достаточно ощутимо. В раза 2 быстрей точно стал

Сделать пару таких процов. Еще быстрее будет.

Изменено пользователем Chardash

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Лучше не оценивать конечноэлементную модель количеством степеней свободы, поскольку так вы указываете на скорость чисто решения систем СЛАУ. Раз уж есть такое желание, можно найти задачу, сочетающую нелинейность поведения с подробностью сетки, для оценки скорости Ansys на "данном" железе, промасштабировать по сложности и виду решателей и как тест использовать.

Весьма интересно, как дела с распараллеливанием в Ansys для разных операционных систем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Сделать пару таких процов. Еще быстрее будет.

нельзя их объединять, нету у них QPI-моста для совместной работы

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"систем СЛАУ" - а масло маслянистое как известно :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

да, это тавтология

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Бывает. Язык создан не для того, чтобы верить и думать, а чтобы повиноваться и внушать повиновение считают постмодернисты, глядя на иерархические системы сконструированные людьми. Особенно ярко это проявляется в педагогике. Таковы постулаты постмодернистской лингвистики :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У вас сегодня разговорчивое настроение?

В том сообщении меня интересовал процесс решения какого-то нелинейного уравнения итерационно, и как результат получение СЛАУ.

Поэтому мне и не нравилось в сообщении от 25 06 идея элементарного ускорения решения слау на ряде процессоров - ведь более сложный ньютона-рафсона будет работать с прежней скоростью - или быстрее, но именно это ускорение и не доступно для элементарного анализа

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

По большому секрету скажу, что любая нелинейная задачка решается через последовательность линейных. Уж так Ньютон прописал, которого настоящие британские ученые, открывшие кильку в томате, не признают за своего ввиду отсутствия у него новизны да актуальности :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поэтому рост скорости решения не прямо совпадает с ростом скорости решения слау. Раз процесс ньютона-рафсона нельзя элементарно распарралелить, то его ускорение прямо зависит от успеха и ноу-хау программистов и разработчиков, например Ansys - а смогут ли они реализовать и придумать, или хотя бы рационально выбрать путь реализации сего

Хоть я грешным делом не могу хвастаться что пробовала, но сходу убыстрить ещё обычную схему мкэ не смогу - есть кое-какая идея по декомпозиции пространственный области на объёмы и предназначения каждого такого объёма конкретному процессору или -ам, а потом сшиванию решения

Но енто не везде применимо и не я эту идею первая выдвигаю, может потому так много расширений обычной схемы мкэ сейчас встречается в научной литературе(например у гугла можно спросить)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поэтому рост скорости решения не прямо совпадает с ростом скорости решения слау.

Не совсем понимаю этот вывод. За счет параллелизации ускорили решение СЛАУ в 10 раз. Автоматом ускорили решение Н-Р в те же 10 раз. Почему не совпадает? Самое сложное вН-Р - именно решение СЛАУ. А дальше сложить да вычесть также параллелится. Только проверка условия не параллелится. Да и то при желании можно и это параллелить.

Или речь о том, что решение СЛАУ ускоряется нелинейно от числа потоков?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"то его ускорение прямо зависит от успеха и ноу-хау программистов и разработчиков" - это скорение искусство чем наука и очень чувствительно к задаче. Поэтому и ставят много разных настроек. А так теория метода изложена у Канторовича в Функциональном анализе.

Просто надо итерировать с "мужеством и оптимизмом пока не закончится терпение и деньги" - так советует Стренг. По поводу ускорения Вам ответили правильно, по моему .

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я, в общем, ни у кого ничего спрашивать не собиралась. Да, чаще всего скорость решения как кривая выглядит подобно кривой скорости решения слау. Я имела в виду кое-что другое - сравнительно редко в пакетах мкэ параллелизация выполнена с качеством. Если для одного решателя - например Sparse, паралеллизация выполнена неплохо, ну так этот решатель требует много памяти, и другое. Поэтому исходя из теоретических оценок числа операций для решения слау на n ядрах(потоках по vl) и реальностью существует заметная разница(см. <noindex>http://kvap.ru/pavt2011_cd/full/110.pdf)</noindex>.

Также выше я заметила, что было бы неплохо оценить временные затраты на осуществление вспомогательных операций - приложение и вычисление граничных условий(контакт), сборка матриц и другое смотрите выше.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"сравнительно редко в пакетах мкэ параллелизация выполнена с качеством" - ну это тема на персоналках сравнительно новая. Понятно, что везде где есть векторные операции можно параллелить. Ну да у нас разработками почти никто не занимается теперь, так что от наших стенаний ничего не зависит, пусть Испа и некоторые другие знакомые резвятся :)

Помню когда-то партейный секретарь призывал программистов писать программы, которые съедают меньше машинных ресурсов, так рекомендовала газета Правда :)

"в общем, ни у кого ничего спрашивать не собиралась" - тут же не студенты, которые все скушают молча и не детский садик чтобы в риторике упражняться :rolleyes:

"бы неплохо оценить временные затраты на осуществление вспомогательных операций - приложение и вычисление граничных условий(контакт)" - детский вопрос, читайте <noindex> классику </noindex> , все тривиально :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

То что детские вопросы могут быть очень интересны взрослым это ясно, особенно когда прямых ответов на них нет. Я предлагала этим вопросом озаботиться тем кто желает и с русской печи никого не стягивала.

У нас на форуме много обсуждаемых программ,и ясно, какие для чего нужны, а я вот хочу узнать какие из них лучше распараллелены, какие хуже. Это принципиально важно. Ведь данных по ускорению как на многоядерных прцессорах, так и на многих поцессорах всё же нет. Потом появились видеоускорители, тоже интересно как там с производительностью и главное - на чём будет прирост.

Статья на которую ссылаюсь иллюстрирует мой вопрос, хотя теория конечно давно дана <noindex>Неоклассика</noindex>. Я вообще заметила что блёсткость и многогранность некоторых теорий выявляется значительно позднее, только когда теория соприкасается с практикой.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость
Эта тема закрыта для публикации сообщений.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

  • реклама

  • Реклама

  • Ближайшие события

    Предстоящих событий не найдено
  • Дни рождения сегодня

    1. anton_boy_22
      anton_boy_22
      (36 лет)
    2. Bellinn
      Bellinn
      (50 лет)
    3. FeerShumutt
      FeerShumutt
      (36 лет)
    4. HattieSchr
      HattieSchr
      (34 года)
    5. konstruktor174
      konstruktor174
      (32 года)
    Просмотреть все