Вопрос про производительность параллельных вычисления
От: potatoes19  
Дата: 27.05.08 08:58
Оценка:
Здраствуйте, уважаемые участники форума!
Посоветуйте пожалуйста какую-нибудь литературу (или другие источники данных), в которых можно найти информацию об исследованиях производительности и времени выполнения алгоритмов на различных параллельных архитектурах (в том числе просто в многозадачных ОС): грид и т. п., различие времени выполнения одного алгоритма в последовательном виде и в параллельном.
По идее, время выполнения на параллельной арх. не может ускориться, более чем в N раз (N — кол-во процессоров), но тут возможны варианты!

Заранее большое спасибо!
Re: Вопрос про производительность параллельных вычисления
От: Smal Россия  
Дата: 31.05.08 07:17
Оценка: 1 (1)
Здравствуйте, potatoes19, Вы писали:

P>Здраствуйте, уважаемые участники форума!

P>Посоветуйте пожалуйста какую-нибудь литературу (или другие источники данных), в которых можно найти информацию об исследованиях производительности и времени выполнения алгоритмов на различных параллельных архитектурах (в том числе просто в многозадачных ОС): грид и т. п., различие времени выполнения одного алгоритма в последовательном виде и в параллельном.
P>По идее, время выполнения на параллельной арх. не может ускориться, более чем в N раз (N — кол-во процессоров), но тут возможны варианты!

Все намного хуже. Слышал про закон Амдала?
Если есть 1000 процессоров, и надо провести 90% работы можно распараллелить, то ускорение произойдет не более чем в 10 раз.
(это не зависит от архитектуры и т.п.). Другими словами, основной фактор — это задача и алгоритм её решение. Остальное — детали реализации.
С уважением, Александр
Re[2]: Вопрос про производительность параллельных вычисления
От: Smal Россия  
Дата: 31.05.08 07:19
Оценка:
Здравствуйте, Smal, Вы писали:

S>Если есть 1000 процессоров, и 90% работы можно распараллелить, то ускорение произойдет не более чем в 10 раз.

Сбилась мысль.
С уважением, Александр
Re: Вопрос про производительность параллельных вычисления
От: D. Mon Великобритания http://thedeemon.livejournal.com
Дата: 01.06.08 12:38
Оценка:
Здравствуйте, potatoes19, Вы писали:

P>По идее, время выполнения на параллельной арх. не может ускориться, более чем в N раз (N — кол-во процессоров), но тут возможны варианты!


Из опыта: на кластерах не раз наблюдали ускорение в более N раз — когда порция данных, приходящаяся на одну машину, начинает влезать в кэш.
Re[2]: Эх не писали вы для ЭВМ размером с дом... :)
От: Erop Россия  
Дата: 01.06.08 13:27
Оценка:
Здравствуйте, D. Mon, Вы писали:

DM>Из опыта: на кластерах не раз наблюдали ускорение в более N раз — когда порция данных, приходящаяся на одну машину, начинает влезать в кэш.


Если бы программы для "некластеров" писали не залетевшие по случаю криворукие дятлы, то и на однопроцессной тачке ничто не мешало бы обрабатывать данные пачками, которые влезают в кэш...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[2]: Вопрос про производительность параллельных вычисления
От: potatoes19  
Дата: 02.06.08 11:24
Оценка:
Здравствуйте, D. Mon, Вы писали:

DM>Здравствуйте, potatoes19, Вы писали:


P>>По идее, время выполнения на параллельной арх. не может ускориться, более чем в N раз (N — кол-во процессоров), но тут возможны варианты!


DM>Из опыта: на кластерах не раз наблюдали ускорение в более N раз — когда порция данных, приходящаяся на одну машину, начинает влезать в кэш.


Вот меня как раз очень интересуют подобные вещи. Например, влияние разнообразных факторов, присущих кластерам, ГРИД, просто квазипараллельным ОС
(например там время переключения потоков, задержки в сети и т. п.)
Re[2]: Вопрос про производительность параллельных вычисления
От: potatoes19  
Дата: 02.06.08 11:25
Оценка:
Здравствуйте, Smal, Вы писали:

S>Здравствуйте, potatoes19, Вы писали:


P>>Здраствуйте, уважаемые участники форума!

P>>Посоветуйте пожалуйста какую-нибудь литературу (или другие источники данных), в которых можно найти информацию об исследованиях производительности и времени выполнения алгоритмов на различных параллельных архитектурах (в том числе просто в многозадачных ОС): грид и т. п., различие времени выполнения одного алгоритма в последовательном виде и в параллельном.
P>>По идее, время выполнения на параллельной арх. не может ускориться, более чем в N раз (N — кол-во процессоров), но тут возможны варианты!

S>Все намного хуже. Слышал про закон Амдала?

S>Если есть 1000 процессоров, и надо провести 90% работы можно распараллелить, то ускорение произойдет не более чем в 10 раз.
S>(это не зависит от архитектуры и т.п.). Другими словами, основной фактор — это задача и алгоритм её решение. Остальное — детали реализации.

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