Вычислительный сервер vs Кластер

Технологии постороения кластеров (вычислительных и отказоустойчивых), настройка терминал серверов,
SAN , NAS, FibreChannel, Infiniband

Модераторы: Trinity admin`s, Free-lance moderator`s

hgh
Junior member
Сообщения: 18
Зарегистрирован: 05 янв 2004, 12:45
Откуда: Singapore
Контактная информация:

Вычислительный сервер vs Кластер

Сообщение hgh » 07 янв 2004, 10:10

Имеется задача - создать мощный вычеслительный комплекс под Windows.
Есть вопрос - что предпочтительнее - один навороченный многопроцессорный сервер или набор сбитых в кластер машин?
Задачи предполагается считать большие, сродни метеорологическим.

Аватара пользователя
art
free-lance moderator
Сообщения: 653
Зарегистрирован: 15 май 2003, 11:25
Откуда: SPb

Re: Вычислительный сервер vs Кластер

Сообщение art » 07 янв 2004, 13:17

hgh писал(а):Имеется задача - создать мощный вычеслительный комплекс под Windows.
Есть вопрос - что предпочтительнее - один навороченный многопроцессорный сервер или набор сбитых в кластер машин?
Задачи предполагается считать большие, сродни метеорологическим.
Если у вас есть готовый софт, то его разработчик вам об этом подскажет.

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

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

вы можете найти много интересного на http://www.parallel.ru/

hgh
Junior member
Сообщения: 18
Зарегистрирован: 05 янв 2004, 12:45
Откуда: Singapore
Контактная информация:

Re: Вычислительный сервер vs Кластер

Сообщение hgh » 07 янв 2004, 14:25

art писал(а):
hgh писал(а):Имеется задача - создать мощный вычеслительный комплекс под Windows.
Есть вопрос - что предпочтительнее - один навороченный многопроцессорный сервер или набор сбитых в кластер машин?
Задачи предполагается считать большие, сродни метеорологическим.
Если у вас есть готовый софт, то его разработчик вам об этом подскажет.

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

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

вы можете найти много интересного на http://www.parallel.ru/
Спасибо за линк.
Вообще-то, поскольку сами являемся разработчиками софта, сами же и будем заниматься распараллеливанием.
Согласен на все сто, что в условиях частого обмена данными между узлами приложения необходимо сводить объем частей, необходимых для обмена к минимуму.
Меня же интересовал несколько другой вопрос - что было бы оптимальнее с точки зрения железа?

S&L
Advanced member
Сообщения: 113
Зарегистрирован: 30 ноя 2003, 13:06

Сообщение S&L » 07 янв 2004, 17:39

Привет,
с точки зрения железа кластер будет дешевле чем smp-box.
Последние - это же брэнды, они за марку неслабо хотят,
а кластер можно и на коленке собрать, чем америкозы у себя
в универах занимаются.
полезно посмотреть top ten tpc-c на на tcp.org.
там как раз на первом месте 16-узловой HP кластер, а на
втором - их же супердом, все с подробными ценами.

Аватара пользователя
a_shats
Advanced member
Сообщения: 5010
Зарегистрирован: 27 авг 2002, 10:55
Откуда: Москва
Контактная информация:

Сообщение a_shats » 08 янв 2004, 12:57

Если речь о Windows - напомню: там есть только Fail-over cluster. Т.е. тут изначально не стоит рассчитывать на кластеризацию.
Стало быть - если Windows - имхо, лучше подумать, как разложить нагрузку на подсистемы smp-сервера. Ну, или реализовать репликацию между экземплярами задачи, разбросанными по серверам (что есть отдельная некая болезнь).
Кстати: а что за задача (тип задачи(БД-файловая или SQL,ERP, CAD,моделирование чего-нить...), обрабатываемые объемы, кол-во клиентов) ? Может, и чего бы еще поподробней подсказали... ;) А цены - дык, и у нас посмотреть можно ;) .

Аватара пользователя
art
free-lance moderator
Сообщения: 653
Зарегистрирован: 15 май 2003, 11:25
Откуда: SPb

Re: Вычислительный сервер vs Кластер

Сообщение art » 08 янв 2004, 19:56

hgh писал(а): Согласен на все сто, что в условиях частого обмена данными между узлами приложения необходимо сводить объем частей, необходимых для обмена к минимуму.
Меня же интересовал несколько другой вопрос - что было бы оптимальнее с точки зрения железа?
Как параллелизуете?
MPI, PVM, DDI?

без вашего анализа кода выбор железа бессмысленен.

Сами посудите:
если вы на каждом узле кластера делаете вычисления 100000 тактов процессора (100мкс), потом на master-node сливаете 80мб данных по 1G сети (1 сек), потом master-node вычисляет новую матрицу раздает данные обратно на кластер (1 сек). какая будет эффективность параллелизма от N процессоров?
1E-4*N

Так что даже 2-х узловый кластер будут давать выигрыш не больше 0.01%

SMP машина в той же ситуации будет масштабироваться в 100%

Анализируйте код, прежде чем деньги тратить.

S&L
Advanced member
Сообщения: 113
Зарегистрирован: 30 ноя 2003, 13:06

Сообщение S&L » 09 янв 2004, 09:25

Привет, мне кажется не все так сладко с SMP.
Конечно, зависит от задачи.
С базами данных результаты другие, см. tpc.org.
Даже SUN не говорит про 100%:
http://www.sun.com/datacenter/superg/do ... Berlin.pdf

Да и NUMA же имеет место быть, почему?

Аватара пользователя
art
free-lance moderator
Сообщения: 653
Зарегистрирован: 15 май 2003, 11:25
Откуда: SPb

Сообщение art » 09 янв 2004, 11:33

S&L писал(а):Привет, мне кажется не все так сладко с SMP.
Конечно, зависит от задачи.
С базами данных результаты другие, см. tpc.org.
Даже SUN не говорит про 100%:
http://www.sun.com/datacenter/superg/do ... Berlin.pdf

Да и NUMA же имеет место быть, почему?
Базы данных - немного другой случай. Там обязательное требование - атомарность данных.

Считаю спор бессмысленным, пока вы не оцените свой код.

Кто мешает прогнать его на SMP и на двух нодах по сети.
Вот и увидите разницу, особенно если профилировать время исполнения отдельных процедур.

На примере квантовохимических вычислений мне известны алгоритмы, которые на 4 нода в 100мбит сети масштабируются на 370%, а есть алгоритмы, которые и в SMP на 2х процессорах не дают 180%

Ещё раз повторю. Без анализа вашего кода выбор платформы весьма рискован.

Аватара пользователя
a_shats
Advanced member
Сообщения: 5010
Зарегистрирован: 27 авг 2002, 10:55
Откуда: Москва
Контактная информация:

Сообщение a_shats » 09 янв 2004, 12:38

Да, вдогонку... Помнится, гос. метеорологи для своих вычислений планировали приобретение кластеров на Itanium. Правда, у них история несколько другая... Они с Крэя туда переезжают. Да и не Windows у них ;) .
Впрочем, мы тоже можем поставить кластер на Itanium - по крайней мере, такие платформы (от Supermicro) доступны ;) .

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16622
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Сообщение gs » 09 янв 2004, 13:05

Проблема с быстрым транспортом межу машинами частично (но все равно не до конца) снимается использованием миринет или чего-либо подобного. Но это вещи недешевые - может смысл пропасть.
А сколько процессоров вообще надо? Если речь идет о десятках, то однозначно придется разбираться с параллелизацией на несколько машин. Просто аппарат больше чем на 16 процессоров будет стоить космических денег. Да и 16ЦПУ в сотнях тысяч измеряется. А если уж так и так механизм параллелизации делать придется, то принципиально не так уж и важно на сколько машин. Тем более что Вы сами писать будете.

hgh
Junior member
Сообщения: 18
Зарегистрирован: 05 янв 2004, 12:45
Откуда: Singapore
Контактная информация:

Re: Вычислительный сервер vs Кластер

Сообщение hgh » 15 янв 2004, 13:13

art писал(а): Как параллелизуете?
MPI, PVM, DDI?
MPI
art писал(а): без вашего анализа кода выбор железа бессмысленен.

Сами посудите:
если вы на каждом узле кластера делаете вычисления 100000 тактов процессора (100мкс), потом на master-node сливаете 80мб данных по 1G сети (1 сек), потом master-node вычисляет новую матрицу раздает данные обратно на кластер (1 сек). какая будет эффективность параллелизма от N процессоров?
1E-4*N

Так что даже 2-х узловый кластер будут давать выигрыш не больше 0.01%
Вот-вот. Только это если глупо параллелить и на каждом временном слое гонять по сети туда-сюда всю расчетную область (ну скажем 300*200*50, порядка 20 физических параметров). Если же выполнить препроцессорное разбиение расчетной области на подобласти и гонять только сечения на границах, собирая все вместе лишь раз в полторы-две тысячи шагов по времени (для организации сохранения результатов) - то эффективность сразу возрастает.
Экспериментально было получено уменьшение времени расчета в 1.56 раза. Считалось на трех компьютерах, обмен данными - через сеть (100 Мбит\сек).

Аватара пользователя
art
free-lance moderator
Сообщения: 653
Зарегистрирован: 15 май 2003, 11:25
Откуда: SPb

Re: Вычислительный сервер vs Кластер

Сообщение art » 15 янв 2004, 20:23

hgh писал(а):
art писал(а): Как параллелизуете?
MPI, PVM, DDI?
MPI

Вот-вот. Только это если глупо параллелить и на каждом временном слое гонять по сети туда-сюда всю расчетную область (ну скажем .
Ну а я про что?
Вы код пишете - вам и решать. Вы думаете, что не располагая данными, типа того что вы привели, кто то даст совет и не соврет?

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

hgh
Junior member
Сообщения: 18
Зарегистрирован: 05 янв 2004, 12:45
Откуда: Singapore
Контактная информация:

Re: Вычислительный сервер vs Кластер

Сообщение hgh » 16 янв 2004, 05:38

art писал(а): Ну а я про что?
Вы код пишете - вам и решать. Вы думаете, что не располагая данными, типа того что вы привели, кто то даст совет и не соврет?

Оцените, что для вас дешевле - переписывать код с учетом явного праллелизма, или тратиться на миринет (задержки в котором >>локальное памяти), или покупать многопроц. сервер.
Ну поскольку переписывать код и так и так придется... то хотелось бы узнать подробнее о том, что есть миринет - потому как Яндекс на него выплюнул 4 ссылки и придложение поискать "Мир Инета", рамблер и того хуже - 1, а как сия технология на языке народностей Туманного Альбиона называется я не в курсе...

hgh
Junior member
Сообщения: 18
Зарегистрирован: 05 янв 2004, 12:45
Откуда: Singapore
Контактная информация:

Re: Вычислительный сервер vs Кластер

Сообщение hgh » 16 янв 2004, 06:16

art писал(а): Оцените, что для вас дешевле - переписывать код с учетом явного праллелизма, или тратиться на миринет (задержки в котором >>локальное памяти), или покупать многопроц. сервер.
Myrinet таки нашел. В связи с этим вопрос - Чем принципиально Myrinet отличается от обычной сети.
Заранее благодарен за консультацию.

Аватара пользователя
a_shats
Advanced member
Сообщения: 5010
Зарегистрирован: 27 авг 2002, 10:55
Откуда: Москва
Контактная информация:

Сообщение a_shats » 16 янв 2004, 11:04

С точки зрения покупателя - солидно дороже GE и FC. С точки зрения работы кластера - практически наименьшая задержка из всех известных межузловых интерфейсов. Что, понятно, для кластера весьма критично.

Ответить

Вернуться в «Кластеры, Аппаратная часть»