IPB

Здравствуйте, гость ( Вход | Регистрация )



Нет регистрации на форуме? Вам сюда.
5 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> Языки, программы и так далее, Вынос из БН-800
Татарин
сообщение 1.12.2016, 20:34
Сообщение #1


Постоянный участник
******

Группа: Patrons
Сообщений: 2 427
Регистрация: 16.3.2011
Пользователь №: 32 318



Цитата(AtomInfo.Ru @ 1.12.2016, 8:23) *
Мы специально дали возможность Е.Ф. высказаться по поводу матначинки эксплуатационного комплекса.
Потому что иногда приходится слышать: "Ну, на станциях диффузия, разве это круто? Прошлый век!".

Действительно, для начинки комплексов, которыми пользуется эксплуатация (именно эксплуатация! не конструктора, например), должен быть выбран оптимум между требованиями по быстродействию и точности и вычислительными возможностями. Физику на станции не нужен код, который один вариант будет просчитывать неделями на суперкомпьютере smile.gif В том числе, и потому, что далеко не всегда такой суперкод даст результаты точнее, чем инженерная программа.

Вот этот момент мне показался самым... странным в интервью.
Мощность машин быстро растёт.

Кроме того, большинство массивных расчётов замечательно выносится в спецвычислители - ну хоть CUDA/OpenCL. Я не уверен насчёт именно видеокарт именно в вашем случае, но суперкомпьютер суперкомпьютеру рознь - может, тот же результат можно получить чем-то вроде Knight'а или спецядро на ПЛИС запилить?

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

Никто ж не требует суперкомпа (в традиционном понимании) для установки в РЛС с АФАР? А там числодробилки нужны приличной производительнсти, причём, в реальном времени и с (кое-где) ограничениями по массе, теплу и потреблению.
Или - другой пример - никто ж не удивляется суммарной мощности сети Биткойна? Там ASIC'и. МНОГО ASIC'ов, сколоченных в фермы... обычному компу (или суперкомпу) там уж лет десять как делать нечего.

Поэтому, если уже известен некий стержень вычислений, вокруг которого всё крутится/будет крутиться в обозримом будущем, почему именно "суперкомпутер"?
Go to the top of the page
 
+Quote Post
armadillo
сообщение 1.12.2016, 20:52
Сообщение #2


Ветеран форума
*****

Группа: Patrons
Сообщений: 1 510
Регистрация: 17.3.2011
Из: Russia, Moscow
Пользователь №: 32 515



а сертифицировать переложенный с фортрана код кто будет?


--------------------
Спор - это когда обе стороны пытаются сказать последнее слово первыми
Go to the top of the page
 
+Quote Post
Татарин
сообщение 1.12.2016, 20:57
Сообщение #3


Постоянный участник
******

Группа: Patrons
Сообщений: 2 427
Регистрация: 16.3.2011
Пользователь №: 32 318



Цитата(armadillo @ 1.12.2016, 20:52) *
а сертифицировать переложенный с фортрана код кто будет?

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

Переписать на С (лучше - чистом, дабы снять все тулчейн-зависимости) таким образом, чтобы вынести вычислительно-ёмкие вещи в аппаратно-зависимые функции/методы/классы. И наслаждаться затем "вездеходностью" кода. Это помимо скорости.

Аппаратные ускорители - они же не только на станции полезны. Худо ли, если _точный_ код у расчётчика на столе будет в разы и на порядки быстрее бежать?

Сообщение отредактировал Татарин - 1.12.2016, 20:59
Go to the top of the page
 
+Quote Post
Syndroma
сообщение 1.12.2016, 22:15
Сообщение #4


Ветеран форума
*****

Группа: Patrons
Сообщений: 1 270
Регистрация: 23.12.2014
Пользователь №: 34 075



Да, современное железо уже подбирается к уровню, когда становится возможным использовать Монте-Карло для трёхмерной графики в реальном времени:
http://www.youtube.com/watch?v=BpT6MkCeP7Y

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


--------------------
Всё это мелкая рябь на волнах экономических циклов, незаметных на приливах эпох.
Накапливать ОЯТ абсурдно для здорового человека.
Если мечтать — то ни в чём себе не отказывать.
8956
Go to the top of the page
 
+Quote Post
alex_bykov
сообщение 1.12.2016, 22:58
Сообщение #5


Эксперт
******

Группа: Уровень доступа - 2
Сообщений: 3 882
Регистрация: 9.6.2007
Из: Обнинск-Москва
Пользователь №: 89



Ну, Монте-Карло или нет, вопрос десятый - там свои ограничения и источники ошибок есть. А вот с чем Татарина поддержу, так это с "достругиванием" кода.
У нас в SVC "сидит" чутка лучшее приближение, чем диффузионка (с некоторыми оговорками метод близок к прямому решению уравнения переноса). Когда стало нужным "допилить" для увеличения скорости счёта, был эффект и от перехода на C++ - примерно 2 порядка, и от применения современных методов решения разреженных систем большой размерности (2-3 раза). Правда, в онлайн мы его пока не утрамбовали, но пока и не занимались всерьёз распараллеливанием. А всего лишь возникла задача допилить до возможности использования отдельных расчётов в существующей системе на АЭС...
Правда, код БНы не считает - групп маловато.


--------------------
С уважением

Александр Быков
Go to the top of the page
 
+Quote Post
LAV48
сообщение 2.12.2016, 0:30
Сообщение #6


Ветеран форума
*****

Группа: Patrons
Сообщений: 1 722
Регистрация: 14.3.2011
Из: 34
Пользователь №: 32 154



Одно из направлений мысли - программно программируемые матрицы. С современными техпроцессами необходимую расчётную мощность можно поместить в "банальный смартфон". Другое дело, когда требуется большой объём ввода-вывода (не в плане исходных/конечных, а работа с большим объёмом данных), например брутфорс такими "ускорителями" не форсировать.
Go to the top of the page
 
+Quote Post
Татарин
сообщение 2.12.2016, 9:04
Сообщение #7


Постоянный участник
******

Группа: Patrons
Сообщений: 2 427
Регистрация: 16.3.2011
Пользователь №: 32 318



Цитата(alex_bykov @ 1.12.2016, 22:58) *
Ну, Монте-Карло или нет, вопрос десятый - там свои ограничения и источники ошибок есть.

Понятия не имею, нужен ли там в расчётах Монте-Карло, ибо в нейтронных расчётах разбираюсь примерно как свинья в живописи. smile.gif

О чём говорил - о том, что если алгоритм определён и у него выделены критичные к скорости операции (как прямое/обратное Фурье для ЦОС, к примеру или тригонометрия/квадратный корень для 3д-рендера), то скорость - это не есть проблема.
Ну или точно не есть проблема, которая решается именно и только установкой суперкомпов; суперкомпы или вообще процессоры общего назначения нужны как _универсальное_ вычислительное средство. Ведь суперкомпы дают рост производительности на порядки - три-пять порядков максимум. Того же роста в массивных вычислениях можно несоизмеримо дешевле получить аппаратным ускорением. А реакторные штуки - нейтроника или теплотехника выглядят именно как нечто поддающееся параллелизации.

Для таких спецалгоритмов есть всякие весёлые платки с дополнительными процессорами, с GPU, с ПЛИС.
Их немножко мучительно программировать, но результат в смысле скорость/количество железа или скорость/ватты отличается радикально. Но и выносятся туда после профилирования лишь критичные по скорости функции числодробления, то есть, не нужно же весь алгоритм под железо перепиливать. Только конкретные формулы/операции.

А если, как Вы говорите, ещё и компиляторы Фортрана такие убогие в отрасли используются, что переход на нормальную компиляцию С/С++ даёт выигрыш на два порядка, то о чём вообще речь?
Go to the top of the page
 
+Quote Post
asv363
сообщение 2.12.2016, 10:40
Сообщение #8


Участник-писатель
*******

Группа: Patrons
Сообщений: 5 578
Регистрация: 20.8.2012
Из: Россия, Москва
Пользователь №: 33 670



Во-первых, интервью отличное.
Во-вторых, если кто-нибудь сходу вспомнил по коду 90Н команду (семейство 8086, asm) - то пусть напомнит. И, заодно, можно написать код для запрещения прерываний. В интернет грязными руками не лазить!

Тем временем, я сделаю вид, что ничего не помню.
Go to the top of the page
 
+Quote Post
Syndroma
сообщение 2.12.2016, 11:16
Сообщение #9


Ветеран форума
*****

Группа: Patrons
Сообщений: 1 270
Регистрация: 23.12.2014
Пользователь №: 34 075



Цитата(asv363 @ 2.12.2016, 12:40) *
Во-вторых, если кто-нибудь сходу вспомнил по коду 90Н команду (семейство 8086, asm) - то пусть напомнит.


Слишком просто — это универсальная операция над любыми данными.

Ещё в порядке оффтопа, 99 строк на C++, полностью реализующие Монте-Карло для трёхмерной графики:
http://www.kevinbeason.com/smallpt/

Сообщение отредактировал Syndroma - 2.12.2016, 11:17


--------------------
Всё это мелкая рябь на волнах экономических циклов, незаметных на приливах эпох.
Накапливать ОЯТ абсурдно для здорового человека.
Если мечтать — то ни в чём себе не отказывать.
8956
Go to the top of the page
 
+Quote Post
generalissimus19...
сообщение 2.12.2016, 12:18
Сообщение #10


Завсегдатай
****

Группа: Haunters
Сообщений: 550
Регистрация: 4.7.2014
Из: Moscow
Пользователь №: 34 011



QUOTE(asv363 @ 2.12.2016, 11:40) *
Во-первых, интервью отличное.
Во-вторых, если кто-нибудь сходу вспомнил по коду 90Н команду (семейство 8086, asm) - то пусть напомнит.

Процессор 8086 был знаменит тем, что у него не было отдельной команды NOP. В качестве неё использовалась команда XCHG AX, AX.
QUOTE(asv363 @ 2.12.2016, 11:40) *
И, заодно, можно написать код для запрещения прерываний. В интернет грязными руками не лазить!

Тем временем, я сделаю вид, что ничего не помню.

Ну, на ассемблере 8086 я довольно много программировал вплоть до 1995 года. Но коды не помню. Коды я помнил от 8080, довольно долго. Да и сейчас помню больше половины таблицы. А вот от 8086 коды уже не помнил, не было смысла - команды у него ну очень переменной длины smile.gif и один и тот же байт мог значить совсем разные вещи, в зависимости от начального смещения. Больше того, есть такая программа, которая играет музыку на PC Speaker-е, у неё этот трюк используется - переход посредине команды, после чего исполняется совсем другая последовательность. А ещё у неё в тексте COPYRIGHT было написано одними большими буквами. Потому что это место тоже исполнялось.
Go to the top of the page
 
+Quote Post
Superwad
сообщение 2.12.2016, 13:14
Сообщение #11


Ветеран форума
*****

Группа: Patrons
Сообщений: 1 207
Регистрация: 24.8.2016
Пользователь №: 34 367



Тех кто тянет С/С++ языки в критические области - пристрелить на дальнем подступе. И никак иначе! А лучше пристрелить вообще!
Только проверенные и только НАДЕЖНЫЕ языки высокого уровня! С и С++ не является языком высокого уровня - он застрял на серединке, в нем нет ГЛАВНОГО - в нем нет ЧИТАБЕЛЬНОСТИ КОДА! Все приплыли, и проект F-35 как бы на это намекает, много АДА с примесью С. Вот и до сих пор кувыркаются. Так что только Паскаль, Ада и Фортран. Ну еще можно ассемблер, где это нужно.
Go to the top of the page
 
+Quote Post
Superwad
сообщение 2.12.2016, 13:18
Сообщение #12


Ветеран форума
*****

Группа: Patrons
Сообщений: 1 207
Регистрация: 24.8.2016
Пользователь №: 34 367



Насчет спец. процессора. Сколько было эйфории по поводу Java и что появится куча спец. процессоров поддерживающие Java на уровне железа. И хде они? Все крутиться на обычных серийных процессорах.
Go to the top of the page
 
+Quote Post
Syndroma
сообщение 2.12.2016, 13:39
Сообщение #13


Ветеран форума
*****

Группа: Patrons
Сообщений: 1 270
Регистрация: 23.12.2014
Пользователь №: 34 075



Цитата(Superwad @ 2.12.2016, 15:18) *
Все крутиться на обычных серийных процессорах.

Неправда. Современный компьютер состоит из нескольких серийных процессоров и нескольких тысяч параллельных процессоров. Это радикально отличается от того, что было 20 лет назад.
Программа, требующая для выполнения только один универсальный процессор, использует возможности современного компьютера от силы на 10%.

Проводить большое количество вычислений на высокоуровневом языке — не самый эффективный подход. Но он может быть оправдан, конечно, если производительность не самое главное. Просто нужно помнить, что в некоторых случаях перемещение ядра вычислений на видеокарту даёт ускорение на 5 порядков.


--------------------
Всё это мелкая рябь на волнах экономических циклов, незаметных на приливах эпох.
Накапливать ОЯТ абсурдно для здорового человека.
Если мечтать — то ни в чём себе не отказывать.
8956
Go to the top of the page
 
+Quote Post
VBVB
сообщение 2.12.2016, 14:19
Сообщение #14


Постоянный участник
******

Группа: Patrons
Сообщений: 3 147
Регистрация: 16.3.2011
Из: Россия, Краснодар
Пользователь №: 32 291



QUOTE(Татарин @ 2.12.2016, 10:04) *
А если, как Вы говорите, ещё и компиляторы Фортрана такие убогие в отрасли используются, что переход на нормальную компиляцию С/С++ даёт выигрыш на два порядка, то о чём вообще речь?

Интересно еще узнать, что конкретно за машины используются на БАЭС для работы с ГЕФЕСТом.

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

Знаю исследовательскую группу по прогнозированию землетрясений которая долгое время пользовалась шестью обычными бытовыми двуядерными PC и малой серверной стойкой с восьмиядерным процессором. И это все выдавалось за вычислительные сверхмощности. И только недавно они перешли на использование нового сервера с 64 ядрами.
Другой пример, где знакомый работает в госконторе где объемное моделирование электродинамики материалов разных неделями заставляют делать на примитивных двуядерных ноутбуках. А по причине режимности работать на других машинах запрещено.

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

Сообщение отредактировал VBVB - 2.12.2016, 14:22


--------------------
"чтобы задать правильный вопрос, надо знать большую часть ответа" - Роберт Шекли
Go to the top of the page
 
+Quote Post
Татарин
сообщение 2.12.2016, 15:01
Сообщение #15


Постоянный участник
******

Группа: Patrons
Сообщений: 2 427
Регистрация: 16.3.2011
Пользователь №: 32 318



Цитата(Superwad @ 2.12.2016, 13:14) *
Тех кто тянет С/С++ языки в критические области - пристрелить на дальнем подступе. И никак иначе! А лучше пристрелить вообще!
Только проверенные и только НАДЕЖНЫЕ языки высокого уровня! С и С++ не является языком высокого уровня - он застрял на серединке, в нем нет ГЛАВНОГО - в нем нет ЧИТАБЕЛЬНОСТИ КОДА! Все приплыли, и проект F-35 как бы на это намекает, много АДА с примесью С. Вот и до сих пор кувыркаются. Так что только Паскаль, Ада и Фортран. Ну еще можно ассемблер, где это нужно.

Если Вы не любите кошек, Вы просто не умеете их готовить.

...
С++ по читаемости зависит почти исключительно от программиста. Возможно всё.
Go to the top of the page
 
+Quote Post
asv363
сообщение 2.12.2016, 16:20
Сообщение #16


Участник-писатель
*******

Группа: Patrons
Сообщений: 5 578
Регистрация: 20.8.2012
Из: Россия, Москва
Пользователь №: 33 670



QUOTE(Superwad @ 2.12.2016, 13:14) *
Тех кто тянет С/С++ языки в критические области - пристрелить на дальнем подступе. И никак иначе! А лучше пристрелить вообще!

Необоснованная критика, полагаю.

QUOTE(Superwad @ 2.12.2016, 13:14) *
Только проверенные и только НАДЕЖНЫЕ языки высокого уровня! С и С++ не является языком высокого уровня - он застрял на серединке, в нем нет ГЛАВНОГО - в нем нет ЧИТАБЕЛЬНОСТИ КОДА! Все приплыли, и проект F-35 как бы на это намекает, много АДА с примесью С. Вот и до сих пор кувыркаются. Так что только Паскаль, Ада и Фортран. Ну еще можно ассемблер, где это нужно.

"Читабельность кода" зависит от документирования процесса и опыта и квалификации читающего. Как сугубо личное мнение - чем выше по уровню язык, тем менее контролируется аппаратная архитектура.
Go to the top of the page
 
+Quote Post
Татарин
сообщение 2.12.2016, 16:20
Сообщение #17


Постоянный участник
******

Группа: Patrons
Сообщений: 2 427
Регистрация: 16.3.2011
Пользователь №: 32 318



Цитата(Superwad @ 2.12.2016, 13:18) *
Насчет спец. процессора. Сколько было эйфории по поводу Java и что появится куча спец. процессоров поддерживающие Java на уровне железа. И хде они? Все крутиться на обычных серийных процессорах.

А какая тут связь? Ява-процессоры просто никому не нужны.

А там, где нужны быстрые спецвычисления - нужны спецпроцессоры. А где они нужны, там они и есть.
Go to the top of the page
 
+Quote Post
Татарин
сообщение 2.12.2016, 16:22
Сообщение #18


Постоянный участник
******

Группа: Patrons
Сообщений: 2 427
Регистрация: 16.3.2011
Пользователь №: 32 318



Цитата(VBVB @ 2.12.2016, 14:19) *
Интересно еще узнать, что конкретно за машины используются на БАЭС для работы с ГЕФЕСТом.

Тоже интересный вопрос, конечно, но тут разница уже не в десятичные порядки может быть, а в разы.
Go to the top of the page
 
+Quote Post
AtomInfo.Ru
сообщение 2.12.2016, 16:54
Сообщение #19


Модератор
*********

Группа: Clubmen
Сообщений: 24 881
Регистрация: 16.1.2007
Из: Обнинск
Пользователь №: 4



QUOTE(Татарин @ 1.12.2016, 20:34) *
Вот этот момент мне показался самым... странным в интервью.
Мощность машин быстро растёт.


Несмотря на то, что растёт, требование станции (одна кампания за рабочую смену) еле-ели выполняется с Гефестом, то есть, с уравнением диффузии. Впритык. Так что пока недостаточно выросла.

Но задел на будущее сделан. В интервью есть, что программа с более прецизионным методом на станцию уже поставлена.
Пока как допсредство для проверки вычислений, если у физиков на станции возникнет такая потребность. В будущем - может, и как основной метод.
Go to the top of the page
 
+Quote Post
arcanist
сообщение 3.12.2016, 2:44
Сообщение #20


Частый гость
***

Группа: Haunters
Сообщений: 264
Регистрация: 28.7.2014
Пользователь №: 34 017



Цитата(Татарин @ 2.12.2016, 15:01) *
Если Вы не любите кошек, Вы просто не умеете их готовить.

...
С++ по читаемости зависит почти исключительно от программиста. Возможно всё.

по читаемости возможно. но я думаю, вы не будете спорить, что в той же яве возможностей выстрелить себе в ногу куда меньше, чем в С++. Я думаю, автор именно это имел в виду, говоря о низкоуровневых языках
Go to the top of the page
 
+Quote Post

5 страниц V   1 2 3 > » 
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 28.3.2024, 19:01