Forum: PC-Programmierung Diskrete Logarithmus Problem


von Tascha (Gast)


Lesenswert?

Hallo Leute,


muss mit Hilfe de MPI- und GMP-Bibliothek ein Programm (in C) erstellen, 
welches hexadezimale Zahl an alle PCs im Cluster versendet, diese 
multiplizieren zahl mit jeweiligen PC Nummer und geben das Ergebnis 
zurück. Das Programm soll die Summe aller Einzelberechnungen ausgeben.

Hab aber gar keine Ahnung, wie ich vor gehe.

Bin dankbar für jede Hilfe!

MfG

von Hui (Gast)


Lesenswert?

Das Problem in Einzelaufgaben zerscheibeln. Hast du gemacht? Wie schauen 
die aus? Welche machen ein Problem ?

bring mal.

von Tascha (Gast)


Lesenswert?

Hab die hexadezimale Zahl deffiniert.

Weiss aber nicht wie ich die Bibliotheken (MPI; GMP) einbinde.

von Rainer V. (rudi994)


Lesenswert?


von Hui (Gast)


Lesenswert?

Die einfachste Loesung, bei der man am wenigsten ueberlegen muss, waere 
jede Funktion der einen Library mit jeder Funktion der anderen Library 
zu kombinieren, und schauen, ob's zu was fuehrt.

von Michael R. (Firma: Brainit GmbH) (fisa)


Lesenswert?

Vermutlich habe ich eine leseschwäche, aber: wo ist jetzt der 
Logarithmus? Den diskreten mein ich...

von Lieber nochn Trollinger (Gast)


Lesenswert?

Das Problem ist so diskret, daß es im Text nicht gezeigt werden darf. 
;-)

von Rainer V. (rudi994)


Lesenswert?

Auch MPI-Foren, Communities und Infoseiten sind sehr diskret. Ich habe 
noch nie so viele Auflistungen von weiterführenden Links erlebt, wie zu 
diesem Thema. Konkrete Infos, Wikis, Tutorials gab es aber nirgends.

von S. E. (crayse)


Lesenswert?

Mh, die Frage ist insgesamt wahrscheinlich ein bisschen zu pauschal, um 
da irgendwas konkret zu beantworten.
Am besten ist wahrscheinlich wirklich du stellst konkretere Fragen zu 
einzelnen Teilproblemen.

Wenn es bspw. schon daran scheitert:

> Weiss aber nicht wie ich die Bibliotheken (MPI; GMP) einbinde.

würde ich dir empfehlen mal zu überdenken, ob du das Problem statt mit 
einem C Programm nicht mit Python lösen willst. Die von dir genannten 
Bibliotheken haben alle auch Python-bindings (heißen gmpy bzw. mpi4py). 
Da hat man den Vorteil, dass sich diese auf den meisten Linux-Systemen 
direkt per Paket installieren lassen und man dann außer einer import 
Zeile am Anfang gar nichts mehr zu machen braucht. Außerdem muss man 
sich oft über die Datentypen weniger Gedanken machen. IMHO ist das auch 
debugfreundlicher, weil man es zeilenweise im Interpreter laufen lassen 
kann und direkt sieht, was passiert.
Mit mpi4py hab ich selbst schon gute Erfahrungen gemacht, gmpy hab ich 
noch nicht benutzt, denke aber mal, dass das auch gut funktionieren 
wird. Scheint ja nicht so, als wolltest du etwas ultrakompliziertes 
machen.

> Auch MPI-Foren, Communities und Infoseiten sind sehr diskret. Ich habe
> noch nie so viele Auflistungen von weiterführenden Links erlebt, wie zu
> diesem Thema. Konkrete Infos, Wikis, Tutorials gab es aber nirgends.

Frag ruhig, wenn du konkrete Fragen zu MPI hast, scheint mir allerdings 
bis jetzt so, als wären die für dich erst im übernächsten Schritt 
relevant.
Zunächst solltest du die Bibliotheken ans laufen bringen und die 
Multiplikation auf einem Kern implementiert haben, bevor du das 
anfängst.

Falls du da mal bist, denke ich aber, dass du wahrscheinlich mit einem 
MPI_Broadcast gefolgt von einem MPI_Gather schon ans Ziel kommen 
solltest.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.