Форум кафедры Техники и Электрофизики Высоких Напряжений

Онлайн-сообщество ТВНщиков
Гостям форума:

Добро пожаловать на форум по технике высоких напряжений!
Для получения доступа ко всем разделам необходимо зарегистрироваться


Текущее время: 23 сен 2018, 17:12

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Ускорение вычислений
СообщениеДобавлено: 09 окт 2013, 17:02 
Не в сети
Аватара пользователя

Зарегистрирован: 19 сен 2011, 00:38
Сообщения: 138
Откуда: Г-101
Кто-нибудь сталкивался с проблемой нехватки вычислительной мощности? При решении задачи с заданной точностью вычисление занимает весьма продолжительное время. Как можно ускорить процесс?
В интернете приводят 3 основных способа решения:
1) Оптимизация кода. Использование векторных операций вместо циклов, выделение памяти для массивов заранее через zeros.
2) Использование вычислительных кластеров (что-то подобное, как я понимаю, стоит у нас на ВЦ)
3) Использование параллельных вычислений на многоядерных процессорах с привлечением GPU.
Последний вариант представляет наибольший интерес.

_________________
"Mathematics is the art of giving the same name to different things." - Jules Henri Poincare


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Ускорение вычислений
СообщениеДобавлено: 09 окт 2013, 18:01 
Не в сети
Site Admin

Зарегистрирован: 03 сен 2008, 16:09
Сообщения: 4253
Откуда: Д-3
По моему опыту причиной долгих расчетов в подавляющем большинстве случаев является некорректная постановка задачи и неудачная организация кода.

Что касается параллельных вычислений, то злое эффективное решение - запуск 4х вариантов расчетов из 4х матлабов (для четырехядерной машины).


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Ускорение вычислений
СообщениеДобавлено: 11 окт 2013, 00:14 
Не в сети
Аватара пользователя

Зарегистрирован: 19 сен 2011, 00:38
Сообщения: 138
Откуда: Г-101
Согласен. Но ведь бывают случаи, когда хочется сохранить наглядность кода в ущерб его оптимизации :oops:

Кстати, касаемо сравнения версий матлаба. Если кто не знал, то достаточно простым способом можно узнать время, затрачиваемое на вычисление
Код:
tic
% код программы
toc


Результаты расчета сферической модели лавины по 20 шагам:
Matlab 2011a: 134.637303 секунд
Matlab 2013a: 116.402715 секунд
:-?

_________________
"Mathematics is the art of giving the same name to different things." - Jules Henri Poincare


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Ускорение вычислений
СообщениеДобавлено: 11 окт 2013, 01:00 
Не в сети
Site Admin

Зарегистрирован: 03 сен 2008, 16:09
Сообщения: 4253
Откуда: Д-3
Они постоянно совершенствуют интерпретатор. Так что норм.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Ускорение вычислений
СообщениеДобавлено: 11 окт 2013, 01:01 
Не в сети
Site Admin

Зарегистрирован: 03 сен 2008, 16:09
Сообщения: 4253
Откуда: Д-3
Наглядность кода при параллельных вычислениях вообще очень трудно обеспечить.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB