-
Clusterprogrammierung
Hi Leutz,
weil der Info-Unterricht in der Schule so öde ist, haben wir uns gedacht, dass wir gerne ein rechenintensives Problem (Primzahlen suchen oder ähnliches) auf den 32 recht guten Schulrechnern lösen würden. Dazu würden wir gern das vorhandene Netzwerk nutzen und alle Rechner parallel oder wie auch immer daran rechnen lassen. Die Frage ist: Wie erreichen wir es, dass wir Berechnungen auf mehreren Rechnern laufen lassen können?
Läuft das auf Betriebssystembasis oder wo müssen wir da ansetzen? Momentan geistern wir leider noch etwas herum...
Wäre cool, wenn ihr was wisst
Gruß,
Oli
-
-
18.11.2006, 19:33
Nach oben
#2
Ihr 2 habt Möglichkeiten:
P2P-Rechnen:
Jeder PC hat eine Software laufen, die sich mit jedem anderen Rechner unterhällt, und die Berechnungen verteilt werden. Das wäre eine absolute Vermaschung.
Client/Server:
Ihr programmiert einen Server, bei dem sich die Clients anmelden, und sich die Berechungen abholen, ausführen und die Ergebnisse abliefern.
Dadurch hat der Server immer den genauen Überblick.
C/S ist für den Anfang leichter zu programmieren.
Einfachste Methode:
Der Client bekommt nen universellen Funktionsparser, und der Server erstellt beim ersten Mal eine Datenbank mit allen möglichen Gleichungen. Und jeder Client holt sich dann aus der Datenbank eine Gleichung ab, die wird vom Server temporär ausgecheckt, und nach Rückgabe des Wertes als vollendet abgehakt. Und wenn ein Client nach 5h keine Rückgabe liefert, wird die Gleichung wieder für andere freigegeben.
So..
das sollte in 3-4h mit eine normalen Programmiersprache über TCP/IP und einer kleinen SQL-Datenbank erstellbar sein.
Die Funktionsparser findest du als Beispiele im Internet, genauso wie alles andere auch
Welche Programmiersprach setzt ihr ein?
Gruss,
Flo
-
-
18.11.2006, 20:06
Nach oben
#3
Ich habs zwar noch nich gemacht, weiss aber das es mit Java ziemlich einfach zu lösen is. Da gibts schon viele vorhandene Bibliotheken die man Nutzen kann. Grad zu DBs, Synchronisation & Kommunikation.
-
-
19.11.2006, 19:37
Nach oben
#4
Hi flo!
vielen dank für die genaue beschreibung! wir werden mal schauen, wie weit wir damit kommen
In der Schule setzen wir Delphi ein, haben allerdings auch Java Compiler drauf. Der Infolehrer steht halt dummerweise auf Delphi, sodass wir möglichst dabei bleiben sollten. Meinst du, das ist damit machbar?
Gruß,
Oli
-
-
19.11.2006, 19:59
Nach oben
#5
Machbar ist (fast) alles. Hat denn jemand von euch Erfahrung mit Sockets etc.? Wenn nicht, würde ich euch davon abraten.
-
-
19.11.2006, 20:26
Nach oben
#6
ehrlich gesagt: nein. aber nachdem ich mich eben mal ein bischen im internet umgeschaut habe, finde ich geht das sogar gerade noch. das einzige problem, was ich jetzt nur habe ist, dass delphi 2005 eine andere komponente als serversocket und serverclient (von Delphi7) hat. ansonsten wäre das glaube ich noch recht einfach. nur jetzt muss ich mich mit den indys beschäftigen und da findet man kaum etwas verständlich erklärtes...
-
-
19.11.2006, 20:31
Nach oben
#7
Was ist denn der Zeitrahmen für das Projekt?
-
-
19.11.2006, 21:48
Nach oben
#8
so lange wie wir uns noch langweilen. also noch etwas mehr als 1,5 jahre
-
-
19.11.2006, 22:49
Nach oben
#9
Delphi ist nicht dumm!!
Für Netzwerk: Indy
Datenbank: ZeosLib für MySQL
Ich schau mal die Tage, vlt bastel ich dir mal nen Grundgerüst
Spätestens in 2 Wochen sind meine Prüfungen vorbei.
-
-
20.11.2006, 20:22
Nach oben
#10
kay, danke, danke Das mit Indy hab ich auch schon rausbekommen und hab mich, da ich noch nie etwas über netzwerke in Delphi geschrieben habe, erstmal einen kleinen Chat programmiert. Der ist allerdings bis dato noch recht einseitig, weil nach einer einmaligen, festgelegten message vom server an den client, nur noch der client messages an den server schicken kann. noch steh ich etwas auf dem schlauch, hoffe allerdings, dass ich noch eine lösung finden werde, um das problem zu beseitigen und auch den Server nachrichten aus einem eingabefeld schicken zu lassen.
Gruß,
Oli
-
-
26.11.2006, 17:54
Nach oben
#11
Ich weiss ja nich obs weiterhilft, aber hab grad die aktuelle ct durchgeblättert, un mir is aufgefallen das im nächsten Heft (ab 11.12.) en Artikel zur Clusterprogrammierung ist!
Da viel mir doch glatt wieder der Thread hier ein.
-
-
26.11.2006, 21:37
Nach oben
#12
hey, das ist cool danke für den tipp, dann hab ich wenigstens mal wieder nen grund, die zu lesen
-
Lesezeichen für Clusterprogrammierung
Lesezeichen