Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #38, ЯНВАРЬ 2004 г.

Умножение производительности

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #038, стр. 038-008-3


Представь, что результаты всех сводных таблиц должны быть записаны в один общий отчет (для всех бригад). Получаем: бригада работает по принципу SMP (читай выше), а бригадиры передают таблицы по воздухуу - самолетиками :). В итоге главный бригадир будет располагать всеми данными от бригад. Если учесть, что все люди работали по принципу SMP, то получаем векторно-параллельную архитектуру, или PVP. Ярким примером компьютера с технологией PVP является Cray SV1.

Кластерные установки

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

Первый кластер был собран в 1998 году. Он состоял из 68 процессоров фирмы Intel и занял 114 место среди мировых многопроцессорных установок. Это очень хороший результат, так как цена такой машины была в сотни раз ниже мультипроцессорных станций. Изобретателем такой системы стал Michael Warren. Он назвал свое детище именем Avalon. После создания этой супермашины кластеры обрели большую популярность и стали использоваться в крупных компаниях как вариант дешевого заменителя мультипроцессорности.

К построению кластеров существует два требования, которых необходимо придерживаться:

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

2. Сеть. Важно понимать, что данные между станциями будут передаваться через сеть. Поэтому необходимо установить качественное оборудование, заточенное под 100Mb/s Fast Ethernet. Десяти мегабитов тоже хватит, но иногда могут возникнуть серьезные проблемы в пропускной способности. Также нужно уделить должное внимание сетевым устройствам. Брать только проверенные адаптеры: 3COM, D-link и т.п. Если ты поставишь на кластерные машины китайские сетевухи за 5 баксов, ничего хорошего из этого не выйдет :).

Если говорить об осях, которые заточены под кластеры, идеальной операционкой для управления системой является Linux. Ни для кого не секрет, что для кластерного управления существует отдельный софт и, как правило, пингвина всегда применяют в качестве рулевой оси.

Зачем это нужно

А теперь самый интересный вопрос: где применить мультипроцессорность. Некоторые думают, что такой мощный компьютер пригодится в качестве домашнего ПК. Мол, реально поиграть и поработать без тормозов. Спешу тебя разочаровать: прироста производительности в домашних условиях ты не получишь. Например, единственная игра Quake III Arena, которая идет под двумя камнями, дает прирост всего на 7-10%. Это связано с тем, что когда юзер проявляет активность (жмет на клавиши и жмакает мышкой), система вызывает прерывание, что полностью останавливает все процессоры. После этого процы возвращаются к предшествующей обработке данных, на это тоже уходит время. В итоге и получаем цифру 7% и неоправданную трату денежных средств.

Назад на стр. 038-008-2  Содержание  Вперед на стр. 038-008-4