Как делиться процессором или оперативной памятью?

В сети мы совместно используем File (Disk Driver) или Базы данных. Но как мы можем делиться процессором или ОЗУ по сети.

Для этого программа (ы), обращающаяся к ресурсам ЦП / ОЗУ, должна быть специально разработана для доступа к указанным ресурсам. Система, созданная таким образом, называется кластером, а общий способ совместного использования ресурсов – с протоколом MPI (интерфейс передачи сообщений). Это бесплатная загрузка и использование ее с Linux может дать мощный кластер (возможно, даже суперкомпьютер) за минимальную стоимость, но опять же бесполезно, если у вас нет программ, специально предназначенных для использования MPI. Есть несколько хороших учебников по кластеру, если вы все еще заинтересованы, вы должны проверить их.

Редактировать:

Я бы порекомендовал учебник здесь, если вы хотите настроить кластер. Я сделал кластер, следуя этому руководству год назад, и он работал очень хорошо. Учебное пособие немного устарело, поэтому некоторые файлы могут быть не совсем точными, о чем говорится в учебнике (иногда файлы перемещаются в разных / более новых дистрибутивах Linux), но если вы мало знакомы с Linux, это не должно быть проблемой. В учебнике используется более старая версия MPI, но я использовал самую новую версию и не имел проблем, которые не были легко решены. В зависимости от того, что вы делаете, на самом деле может быть программа, которая может использовать MPI. Я знаю, что есть некоторые программы кодирования и кодирования видео, которые используют MPI, которые могут быть загружены из универсальных источников.

Вы можете обмениваться оперативной памятью с помощью RAM-дисков, но это похоже на совместное использование обычных дисков, за исключением того, что они находятся в ОЗУ другого компьютера. Нет прямого способа для одного компьютера использовать ОЗУ другого компьютера, как если бы это была его собственная ОЗУ, но есть некоторые способы использовать ОЗУ другого компьютера. Подробнее об этом в следующем параграфе.

Что касается совместного использования ЦП, это возможно, но для него нет единого стандарта. Вы не можете просто поделиться им и позволить другому компьютеру использовать необходимые ресурсы. Вместо этого вам нужно иметь специально разработанные приложения, которые могут работать на нескольких компьютерах в одном. Это часто называют распределенными вычислениями и используется некоторыми исследовательскими проектами, такими как SETI @ Home, Einstein @ Home, Climateprediction.net и многими другими.

В основном программы работают таким образом, что есть один центральный сервер, который распределяет работу, которая должна быть выполнена. Компьютеры в сети загружают рабочие единицы с центрального компьютера и обрабатывают их. После этого центральный компьютер получает результаты от клиентов и объединяет их в один сплоченный результат. Таким образом, компьютеры «разделяют» ресурсы ЦП и ОЗУ по сети. Недостатком этого является то, что программы должны быть выполнены таким образом, чтобы работать над сетью, и в настоящее время распределенные вычисления недостаточно популярны среди общих применений для компьютера, поэтому только небольшое количество специализированных программ поддерживает его. С другой стороны, он широко используется в научных целях, поскольку дешевле получить большое количество персональных компьютеров или игровых станций 3, чем получить доступ к компьютеру мейнфрейма.

Есть ли программное обеспечение для совместного использования моего приложения в моей сети? Без необходимости в зарубежной сети! (Например, я хочу, чтобы файл, который мой ПК отображал это в 7 дней, но я делюсь этим с моей сетью и уменьшением рендеринга до 1 дня? MJH 12 мар '11 в 1:19

Вы столкнулись с проблемой XY , вы не должны спрашивать «как я могу делиться компьютерами cpu и ram accros», но «как я могу использовать несколько компьютеров, чтобы сделать мои рендеринги с использованием ZZZZZ быстрее?»

Он сильно зависит от того, какое программное обеспечение вы используете, и от того, что вы делаете (вы перекодируете видео или вы создаете 3D-модель / видео?).

Чтобы выбрать несколько примеров, бесплатное программное обеспечение 3D Blender поддерживает распределенный рендеринг, где у вас может быть много компьютеров, работающих вместе, чтобы генерировать один вывод. Если вы делаете рендеринг видео, быстрый поисковый движок нашел проект MediaEncodingCluster с открытым исходным кодом, который позволяет воспроизводить видео и аудио файлы с использованием нескольких компьютеров.

Единственная операционная система, которую я знаю, которая позволяет использовать CPU / RAM, – plan9. Там вы можете экспортировать / монтировать практически все. Это, конечно, не означает, что хорошие результаты.

Давайте будем гением компьютера.