Что такое хорошая аппаратная настройка для программирования параллельных и распределенных приложений? - PullRequest
0 голосов
/ 10 июня 2009

У меня нет денег, чтобы построить собственную систему Uber Blade, но я бы хотел заняться параллельным и распределенным программированием (например, CCR / DSS, Hadoop, Project Voldemort и т. Д.).

В настоящее время у меня есть Q6600 с 4 ГБ с несколькими отдельными жесткими дисками, но это все. Хотя я могу писать многопоточные программы, я не могу правильно тестировать распределенные файловые системы / хранилища ключей и искать связанные узкие места (доступ к диску, сеть и т. Д.).

У кого-нибудь есть рекомендации? Покупаете небольшие дешевые коробки и настраиваете мини-сеть? Или, может быть, один блок с двумя i7 и ESX и имитируемой сетью?

редактирование:

В настоящее время я использую VirtualBox и VmWare, и это не выглядит достаточно хорошо для меня, поправьте меня, если я ошибаюсь: жесткие диски могут блокироваться, например, из-за того, что на них работают две виртуализированные машины, или потому что все жесткие доступ к диску осуществляется через тот же контроллер жесткого диска. Сеть является полностью виртуальной, поэтому здесь нет реальных кейсов.

Если бы я пошел по пути виртуализации, что бы вы посоветовали, чтобы я мог приблизиться к «реальной жизни», насколько это возможно?

1 Ответ

0 голосов
/ 10 июня 2009

Виртуализация для ваших тестов распределенной системы. Гораздо проще «вытащить вилку» из машины, отсоединить сетевой кабель и т. Д.

Sun VirtualBox - это отличная бесплатная виртуальная машина, которая мне показалась чрезвычайно удобной для целей разработки. Большинство из них также с открытым исходным кодом, если вы в этом.


Что касается многопоточной части, это на самом деле проще - всегда тестировать с большим количеством программных потоков, чем количество аппаратных потоков. А потом, просто для удовольствия, сделайте что-то вроде записи файла объемом 10 ГБ на жесткий диск, подключите / отключите оборудование, чтобы отключить планировщик. Вы получите удивительные результаты.

...