У меня следующая проблема.
Во-первых, в моей среде у меня есть два 24-CPU сервера для работы и одно большое задание (пересчет большого набора данных) для совместного использования. Я установил многоядерный и (сокет) кластер Snow на каждом. В качестве интерфейса высокого уровня я использую foreach.
Каково оптимальное распределение работы? Должен ли я установить кластер Snow с использованием процессоров с обеих машин и разделить работу таким образом (т.е. использовать doSNOW для цикла foreach). Или я должен использовать два сервера по отдельности и использовать многоядерные на каждом сервере (то есть разделить работу на две части, запустить их на каждом сервере и затем соединить их вместе).
По сути, это простой способ:
1. Поддерживайте связь между серверами (поскольку это, вероятно, самый медленный бит).
2. Убедитесь, что случайные числа, генерируемые на серверах, не имеют высокой корреляции.