Как использовать мощность нескольких компьютеров
Можно ли объединить вычислительную мощность 2 компьютеров?
Вот несколько вопросов, я бы хотел, чтобы вы меня просветили.
5 ответов 5
Непрозрачно, когда работающая программа может каким-то образом использовать второй компьютер для выполнения кода, поскольку они логически разделены, и процессор не может обмениваться данными или получать доступ к памяти друг друга.
Это не значит, что вы не можете объединить вычислительную мощность:
Если вы хотите каким-либо образом использовать дополнительный компьютер, крайне важно иметь возможность удаленного управления. Два способа сделать это через некоторый вид удаленного доступа (RDP, VNC) или альтернативно что-то вроде синергии +.
Нет, невозможно (по крайней мере, насколько я знаю) взять два готовых компьютера, «связать» их вместе и получить объединенную память, вычислительную мощность и все остальное.
Это очень возможно! Но, судя по простоте вашего вопроса, я предполагаю, что вы хотели бы просто запустить программу, которая волшебным образом сделает ваш компьютер в два раза быстрее, что невозможно.
Необходимо понимать, что при запуске программы она поддерживает свое состояние, провоцируя ЦП перемещать память между регистрами жесткого диска, ОЗУ и ЦП, а также адреса различных компонентов (таких как видеокарты или сетевые карты). Проблема с использованием процессора с другого компьютера, чтобы помочь вам, что ему нужен доступ к той же памяти. А поддержание зеркального отображения памяти вашего компьютера на другом компьютере требует таких больших накладных расходов, что это легко побеждает цель добавления другого компьютера для повышения производительности 🙂
Но тип вещей, которые можно разделить между несколькими компьютерами, это рендеринг изображений или некоторые математические вычисления, которые могут работать независимо.
Я согласен с другими ответами:
Если вы говорите о разработке программного обеспечения для работы в распределенной (с несколькими компьютерами) среде, вот несколько советов:
Как объединить мощность нескольких компьютеров под управлением одной Linux системы?
В офисе валяется куча ненужных, рабочих системных блоков. Вот я и решил объединить их в единую вычислительную сеть, а по сути в обычный компьютер управляемый единой ОС, но представляющий собой 3+ системных блока.
Итог: Мне нужно что бы 5+ коробок работала как одна, при этом я не хочу управлять каждым серваком отдельно, моя цель единая машина состоящая физически из нескольких под управлением одной системы. Что она будет делать? Да что угодно, хоть пусть будет web сервером с ip в интернете или просто рабочей станцией Ubuntu или fedora
5 ответов 5
Ответ сводится к тому, что Вам необходимо создать кластер компьютеров под управлением какой-либо Linux-like OS.
Вот несколько готовых решений:
[useless link: has been removed].
Описывать весь процесс в ответе особого смысла нет. Думаю, мой ответ вам полезен.
Если вам действительно интересно масштабирование: то стоит на крутом уровне освоить системное администрирование, docker, а также почитать лирику на тему хайлода https://ruhighload.com/scale
обычно решения строятся от задачи, а не от платформы
что конкретно вы хотите делать?
с другой стороны, в качестве кластерной рабочей станции подобная утилизация вполне интересная и имеет право на жизнь, и может оказаться выигрышным вариантом: на рабочей станции активно не более 2-3 тяжелых задач, остальные ресурсы тратятся на хранение гигабайтных вкладок в браузере, текстовые редакторы и редкие пробежки утилит по файловой системе
Linux реализаций похоже нет:
так что решение задачи в оригинальной постановке сводится по факту к освоению системного программирования в полном объеме: написать аналог ядра Linux обеспечивающий весь необходимый функционал DOS, адаптировать базовые библиотеки в т.ч. из поставки копиляторов GNU (libc, libatomic, gomp. ) и пересобрать всю систему до состояния, когда сможет работать весь компплект ПО который вы используете
возможно более простым решением может оказаться написание слоя виртуализации: переписать только слой всех системных библиотек, который использует ваше прикладное ПО, с реализацией функционала distributed POSIX поверх обычных дистрибутивов, поставленных на каждый узел, или гипервизоров (желаю много весеслья с исходниками Xen и libgcc/libstdc++ 😎
с практической точки зрения:
Можно ли объединить вычислительную мощность 2 компьютеров?
Вот несколько вопросов, я бы хотел, чтобы вы меня просветили.
Непрозрачно, когда работающая программа может каким-то образом использовать второй компьютер для выполнения кода, поскольку они логически разделены, и процессор не может обмениваться данными или получать доступ к памяти друг друга.
Это не значит, что вы не можете объединить вычислительную мощность:
Если вы хотите каким-либо образом использовать дополнительный компьютер, крайне важно иметь возможность удаленного управления. Два способа сделать это через некоторый вид удаленного доступа (RDP, VNC) или альтернативно что-то вроде синергии +.
Нет, невозможно (по крайней мере, насколько я знаю) взять два готовых компьютера, «связать» их вместе и получить объединенную память, вычислительную мощность и все остальное.
Это очень возможно! Но, судя по простоте вашего вопроса, я предполагаю, что вы хотели бы просто запустить программу, которая волшебным образом сделает ваш компьютер в два раза быстрее, что невозможно.
Вы должны понимать, что при запуске программы она поддерживает свое состояние, провоцируя ЦП перемещать память между регистрами жесткого диска, ОЗУ и ЦП, а также адреса различных компонентов (таких как видеокарты или сетевые карты). Проблема с использованием процессора с другого компьютера в том, что ему нужен доступ к той же памяти. А поддержание зеркального отображения памяти вашего компьютера на другом компьютере требует таких больших накладных расходов, что это легко побеждает цель добавления другого компьютера для повышения производительности 🙂
Я согласен с другими ответами:
Если вы говорите о разработке программного обеспечения для работы в распределенной (с несколькими компьютерами) среде, вот несколько советов:
Как из двух пк сделать один мощный?
Здравствуйте!
Посоветуйте как из двух мощных компов сделать один суперкомпьютер.
Конфиги компов:
1)
CPU Type HexaCore Intel Core i7-4960X Extreme Edition, 3600 MHz (36 x 100)
Motherboard Name Asus Rampage IV Black Edition (2 PCI-E x1, 4 PCI-E x16, 8 DDR3 DIMM, Audio, Gigabit LAN, WiFi)
Motherboard Chipset Intel Patsburg X79, Intel Ivy Bridge-E
System Memory 65475 MB (DDR3-1600 DDR3 SDRAM)
Video Adapter NVIDIA GeForce GTX 650 (2 GB)
2)
CPU Type HexaCore Intel Core i7-4960X Extreme Edition, 4000 MHz (40 x 100)
Motherboard Name Asus Rampage IV Black Edition (2 PCI-E x1, 4 PCI-E x16, 8 DDR3 DIMM, Audio, Gigabit LAN, WiFi)
Motherboard Chipset Intel Patsburg X79, Intel Ivy Bridge-E
System Memory 65475 MB (DDR3-1600 DDR3 SDRAM)
Video Adapter NVIDIA GeForce GTX 650 (2 GB)
Есть еще старенький сервер(шумит сильно), можно его задействовать.
Тип ЦП 2x QuadCore Intel Xeon E5405, 2000 MHz (6 x 333)
Системная плата Intel Alcolu S5000PAL (1 Adaptive Slot, 1 PCI-E Riser Slot, 8 FB-DIMM, Video, Dual Gigabit LAN)
Чипсет системной платы Intel Blackford 5000P
Системная память 8185 МБ
Оба используются для расчетов в ANSYS HFSS, последнее время стало не хватать ресурсов компов (из последнего симуляция не запустилась т.к. требовала больше чем 64 гб памяти).
1) Хотелось бы получить конфигурацию в которой в диспетчере задач отображалось 12 ядер и 128гб оперативки для приложений. Приложения использовали эти ресурсы как один пк такое возможно?
Имею начальные навыки работы с Линукс и Вин сервер.
2) Погуглил про Open Mosix. Можно ли развернуть кластер с помощью Mosix, а поверх например установить Proxmox + Windows.
Хотелось бы загрузить все ядра одной задачей. В будущем планирую на нем рендерить 3д.
Кто сталкивался с подобным, какие варианты посоветуете?
Новочеркасск.net
городской форум
Новочеркасск.net
городской форум Новочеркасска
объдинение мощностей ПК по локальной сети
Модератор: MaxP
объдинение мощностей ПК по локальной сети
Re: объдинение мощностей ПК по локальной сети
Re: объдинение мощностей ПК по локальной сети
Re: объдинение мощностей ПК по локальной сети
Лучше просто «распределенные вычисления»
Автор, это от ПО зависит, в общем случае ускорить свой компьютер за счет дургого через сеть нельзя.
Тел.: 8-938-10-410-88 (Мегафон, Ростовская область)
Re: объдинение мощностей ПК по локальной сети
Непрочитанное сообщение vap » 05 окт 2010, 00:53
Лучше просто «распределенные вычисления»
Автор, это от ПО зависит, в общем случае ускорить свой компьютер за счет дургого через сеть нельзя.
Re: объдинение мощностей ПК по локальной сети
Re: объдинение мощностей ПК по локальной сети
Это не ускорение компьютера, это работа в терминале. Да и грузиться не обязталеьнос с Атлонами, можно хоть через удаленный рабочий стол запускать на другом компьютере программу, но это работа в терминале.
А теперь прочтите вопрос автора, и поймете, что не это имелось в виду.
Тел.: 8-938-10-410-88 (Мегафон, Ростовская область)
Re: объдинение мощностей ПК по локальной сети
естественно. первые реализации кластера были предложены еще в Windows NT, ну а в 2003 и 2008 серверных версиях возможности расширены. правда, там идет упор не на производительность а на отказоустойчивость и доступность сервисов.
http://www.winhpc.ru/?id=6
там есть ссылки на лабораторные работы по построению кластера.
Re: объдинение мощностей ПК по локальной сети
Непрочитанное сообщение rfc » 05 окт 2010, 13:52
Re: объдинение мощностей ПК по локальной сети
Непрочитанное сообщение MaxP » 05 окт 2010, 16:56