Rechenleistung erhöhen Im Unterforum Hardware, Betriebssysteme, Programmiersprachen - Beschreibung: Alles zu Software, Hardware, Windows, Linux, Programmiersprachen
Anfragen zu Modding, Games, Cracks, etc. unerwünscht.
Elektronik- und Elektroforum Forum Index >>
Hardware, Betriebssysteme, Programmiersprachen
Hardware, Betriebssysteme, Programmiersprachen : Alles zu Software, Hardware, Windows, Linux, Programmiersprachen
Anfragen zu Modding, Games, Cracks, etc. unerwünscht. |
Autor |
|
|
|
BID = 852366
DonComi Inventar
Beiträge: 8605 Wohnort: Amerika
|
|
Hallo!
Kurz gesagt, würde es mich reizen, gewisse Probleme von mehreren Rechnern lösen zu lassen, mir stünden dafür mehrere Rechner (Laptops und Desktop-Rechner) zur Verfügung.
Mit der Theorie für verteiltes Rechnen habe ich mich natürlich befasst und vieles über z.B. MPI gelesen.
Schön und gut, problematisch ist aber, dass ich ja nur bei eigens entwickelter Software das parallele Rechnen auf mehreren Systemen implementieren kann. Bei existierender Software kann ich kaum die Algorithmen ändern und z.B. auf MPI portieren.
Für mich sieht es also so aus, als würde es keine Lösung geben.
Eines der Programme, wo ich mir das wünschen würde, wäre ffmpeg, welches immerhin mit mehreren Threads Berechnungen durchführt, also schon parallel arbeitet, nur auf einer oder, in meinem Fall zwei, lokalen CPUs.
Gibt es eventuell für solche Programme die Möglichkeit, ein ich sag mal "virtuelles Betriebssystem" aufzusetzen, welches aber auf mehreren separaten Rechnern läuft?
Würde ich mich nun irgendwo einloggen und würde Rechenleistung abrufen, sollte mir dann in etwa die gebündelte Rechenleistung aller Rechner (abzüglich Overhead für Synchronisierung, etc.) zur Verfügung stehen.
Das geht nur unter der Voraussetzung, dass das Programm selbst die zu berechnenden Daten auf mehrere Prozessoren aufteilen kann, wie ffmpeg z.B. Meine Hoffnung wäre, dass in diesem virt. System dann z.B. vier CPUs erkannt würden, die dann auch benutzt werden können.
Es muss aber alles durch das Betriebssystem transparent erledigt werden. Eigene Programme könnte man dann über Threads parallelisieren (klingt fast zu gut, um wahr werden zu können ).
Ich habe dann zwar noch den Overhead durch das Übertragen und Synchroniseren der Daten (das, was MPI praktisch erledigen würde, wenn man es nutzte), denke aber, dass dies auch ohne superschnelle Extranetzwerke geht.
Jemand eine Idee?
Klasse wäre natürlich eine Linuxbasierte Lösung... .
Plan 9 etc. z.B. ist ja schon in etwa das, was ich suche.
Vielen Dank für eine ggfs. interessante Diskussion, auf diesem Gebiet bin ich Neuling (bei Linux hingegen denke ich nicht mehr).
Auf dem Gebiet der Datenspeicherung gibt es ja z.B. LVM, welches, platt gesagt, viele Datenträger(-partitionen) zu einer großen, virtuellen Partition fügt. Man arbeitet mit dieser virtuellen Partition aber wie mit jeder „richtigen“, kann also Dateisysteme erzeugen, usw.
Nutzt man Dateisysteme, die man auch im Nachhinein vergrößern/verkleiner kann, wie z.B. ext3 oder -4, dann kann man durch Hinzufügen neuer Platten die Gesamtgröße skalieren.
Sowas suche ich praktisch für die Rechenleistung .
_________________
[ Diese Nachricht wurde geändert von: DonComi am 15 Okt 2012 1:26 ] |
|
BID = 852367
perl Ehrenmitglied
Beiträge: 11110,1 Wohnort: Rheinbach
|
|
BID = 852368
DonComi Inventar
Beiträge: 8605 Wohnort: Amerika
|
Hallo perl,
Die Seite kenn' ich schon.
Habe vieles, von Clustern über Grid-Computing und Supercomputern gelesen, bin nur nie auf eine mir vorschwebende Lösung gekommen (virtuelles, verteiltes Betriebssystem). Oder ich habe es einfach überlesen.
_________________
|
BID = 852370
ElektroNicki Inventar
Beiträge: 6429 Wohnort: Ugobangowangohousen
|
Offtopic :
| Genau diese Frage habe ich mir auch schon gestellt.
Hier gammelt noch ein relativ schneller PC herum, der meinem (ziemlich schnellen) Laptop ab und zu schon mal unter die Arme greifen könnte (unter Leistungsaufnahmeaspekten ist so ein Vorhaben natürlich ne Katastrophe...)
Ich meine, vor etwa 9 Jahren mal in ner Chip von verteilter Videoberechnung gelesen zu haben.
Weiß aber nicht mehr, ob da eine Videodatei einfach nur in zwei Teile gespalten, getrennt berechnet und dann wieder zusammengefügt wurde oder ob das automatisch ablief.
Wovon mir ein Kumpel erzählt hat: Auf Apfelsystemen ( ) soll es sowas bei der Videobearbeitung geben.
|
_________________
|
BID = 852372
DonComi Inventar
Beiträge: 8605 Wohnort: Amerika
|
Ja, klar gibt es das schon.
Mac als System, mit dem viel Video- und Bildbearbeitung durchgeführt wird, kann das natürlich.
Auch MATLAB (wirst du bald kennenlernen ) hat eigene Pakete, um im Cluster zu rechnen.
Avatar wurde auf Ubuntu mit afaik 40'000 Kernen gerendert.
Dass das geht, weiß ich auch, mich interessiert nur eine transparente Möglichkeit (--> virt. OS), die auf Threads basiert, also wo das Programm ansich schon die Daten aufteilt, getrennt berechnet und wieder synchronisiert in die richtige Reihenfolge setzt.
ffmpeg rendert bei mir z.B. grade im Hintergrund und ich habe schon arge Probleme im Web; dabei rechnet FFMPEG mit 7 getrennten Threads am Video.
Ein Programm, was als einzelner Prozess ausgeführt wird, hat davon gar nichts.
Ich müsste schon im Quellcode den Algorithmus, so es denn sinnvoll ist, auf parallel Verarbeitung anpassen, und das wäre keine gute Lösung, weil unflexibel und ggfs. gar unmöglich.
Als Beispiel MPI: du schreibst den Algorithmus in C und nutzt die MPI-API, um die Daten aufzuteilen. Berechnungen laufen dann auf vielen CPUs gleichzeitig und über Nachrichten erhält dann der Master Teilberechnungen zurück. Könnte man z.B. nutzen, um Matrizen zu multiplizieren: ein Teil wird unabhängig vom anderen berechnet und am Ende zusammengesetzt.
Wenn ich ein ganz konkretes Problem lösen wollte und der Algorithmus mir verständlich ist und ich wenig Zeit hätte, würde ich es manuell programmieren. Aber grade sowas klingt einfacher als es ist. Kommerzielle Softwarepakete für solche Berechnungen enthalten viel Know-How, was man als „einfacher” Ingenieur evt. gar nicht kennt (oder verdrängt hat... ).
_________________
|
BID = 852378
wulf Schreibmaschine
Beiträge: 2246 Wohnort: Bozen
|
Hallo,
eventuell kann VMware das. Wenn ich deren Website richtig verstanden habe bieten sie solche Software an.
Natürlich nicht für lau.
Sonst kannst du mal schauen was Proxmox so kann.
_________________
Simon
IW3BWH
|
BID = 852659
hajos118 Schreibmaschine
Beiträge: 2453 Wohnort: Untermaiselstein
|
unter QNX / Neutrino hab' ich mal eine Vorführung gesehen, bei der per Netzwerk 8 Rechner gekoppelt wurden und die Anwenderprogramme auf die verfügbare Rechenkapazität verteilt wurden. Im laufenden Betrieb konnten sogar Rechner ein- und ausgesteckt werden, ohne die Anwendungen zu stören.
Das war so um 199x ...
_________________
Interpunktion und Orthographie dieses Beitrags sind frei erfunden.
Eine Übereinstimmung mit aktuellen oder ehemaligen Regeln wäre rein zufällig und ist nicht beabsichtigt.
Wer einen Fehler findet, darf ihn behalten!
|
BID = 852701
elmo_cgn Schriftsteller
Beiträge: 620 Wohnort: Köln
|
Hallo,
aus normalen PC oder MAC kannst Du keinen großen Rechner bauen, Du kannst aber den Job für ffmpeg auf die Rechner aufteilen, was anderes machen die großen Renderfarmen auch nicht, ein großer Job wird auf die Verfügbaren Rechner aufgeteilt und nach Bearbeitung wieder zusammengesetzt.
Gruß,
Elmar
|
|
Zum Ersatzteileshop
Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum
Datenschutz
Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland
gerechnet auf die letzten 30 Tage haben wir 22 Beiträge im Durchschnitt pro Tag heute wurden bisher 3 Beiträge verfasst © x sparkkelsputz Besucher : 182687061 Heute : 375 Gestern : 7485 Online : 218 7.1.2025 3:09 4 Besucher in den letzten 60 Sekunden alle 15.00 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
|
xcvb
ycvb
0.0752420425415
|