verteiltes rechnen

OP #854463
hallo

ich möchte in meinem heimnetz (ca 10 computer) die rechenleistung z.b. 
beim encodieren von filmen o.ä. auf alle computer im netzwerk aufteilen. 
viele sagen jetz viel zu hoher aufwand, zu kompliziert.... aber ich 
finde die thematik sehr interessant darum würd ichs gern mal 
ausprobiren.

mein problem ist gibt man bei google "verteiltes rechnen" ein kommen ne 
menge seiten auf denen über projkte berichtet wird die übers www laufen.
daher meine fragen:
1.wie schafft man es verschiedene programme von mehreren rechnern im 
heimnetz bearbeiten zu lassen?
2. welche software und welches betriebssystem braucht man

bin auch froh wenn ihr mir links geben könnt wo das näher beschrieben 
wird

mfg münzi
Am einfachsten/effizientesten gehts wenn das entsprechende Programm 
sowas von Haus aus unterstützt. Oder zumindest die Anfallende 
Rechenarbeit auf mehrere Prozesse (nicht Threads) verteilt.

Viele Raytracer bieten das Verteilte Rechnen z.B. von sich aus an.

Das Kompilieren von größeren Programmen (viele Einzelfiles => viele 
Compileraufrufe) lässt sich auch gut auf mehrere Rechner verteilen, z.B. 
http://distcc.samba.org/

Automatisiertes Verteilen von einzelnen Tasks hat z.B. openMosix 
gemacht, das wird aber nicht mehr weiterentwickelt:
http://linuxwiki.de/OpenMosix

Wenn dein Wunsch-Programm aber nur in einem Task seine Arbeit durchzieht 
(Video-Encoder), lässt sich da nix mehr parallelisieren.
Möglichkeit hier: Videofile zerschneiden, Teile parallel auf mehreren 
Rechnern transkodieren, danach wieder zusammensetzen.
Gast
>1.wie schafft man es verschiedene programme von mehreren rechnern im
>heimnetz bearbeiten zu lassen?
a) Quellcode besorgen
b) Quellcode parallelisieren
c) kompilieren
d) Parallele Laufzeitumgebung  konfigurieren
e) starten

Ein existierendes Programm kannste i.Allg. nicht parallel ausführen. Was 
machbar wäre, falls dein Encoder z.B. auf Frame x...Frame y losgelassen 
werden kann, dass du skriptgesteuert einzelne Abschnitte des Films 
parallel von verschiedenen Rechner encodieren läßt und die zum Schluß in 
der richtigen Reihenfolge zusammensetzt.

>2. welche software und welches betriebssystem braucht man
Einen C-Compiler und ein beliebiges Betriebsystem, das diesen C-Compiler 
unterstützt. Alternativ kannstes auch direkt in Assembler machen, spielt 
keine Rolle.

Mein Tip: laß es bleiben.
Wer so blöd ist, grundlos 10 Rechner aufzustellen, oder Rechner, die 
nicht als Cluster geplant wurden, zum parallel computing verwenden zu 
wollen, ist nicht in der Lage, ein Cluster mit speedup>1 aufzubauen.
Gast
Allerdings ist es gerade beim Kodieren von Filmen wenig sinnvoll den 
Film in harte Segmente aufzuteilen, weil dann der Vorteil eines 
multi-pass-encodings vermindert wird oder verloren geht, abhaengig von 
der Zahl der Segmente.
Gast
Was du ansprichst macht natürlich einen riesigen Unterschied, wenn man 
die einzelnen Prozesse jeweils Segmente von 10min Länge kodieren lässt. 
Aber gut, daß wir drüber gesprochen haben.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.