[C] Multiprozessor nutzen

Götterwind

Commander
Registriert
Apr. 2004
Beiträge
2.687
Hi Leute!

Da es heutzutage ja fast normal ist, mehr als einen Kern in seinem Desktop zu haben, will ich gern in C meinen Code soweit ändern, sodass ich auch die Kraft der 2/4 Herzen ausnutzen kann.

Dazu bin ich auf der Suche nach den entsprechenden Libraries und möglichst einer Dokumentation mit Beispielen dazu. Leider ist google nicht sehr gesprächig in den Stichworten "SMP in C" oder "SMT in C". Kann gern auch in Englisch oder Französisch geschrieben sein, macht keinen Unterschied. ;)

Ich werde trotzdem mal weitersuchen. Wäre nett, wenn mir einer nen Hinweis geben kann, welche Projekte/Libraries es gibt. Oder vielleicht hat ja auch jemand damit Erfahrung?!
 
Google mal nach "POSIX Threads", es gibt unzählige Tutorials, HowTos und FAQs zu den PThreads und als Einstieg ist das Ding sicherlich keine schlechte Wahl.

greetings, Keita
 
OpenMP ist auch ein Stichwort dafür.
 
Was hast du denn vor? Möchtest du für diverese Platformen entwickeln ?
 
@Keita & WingX
THX!

POSIX und OpenMP habe ich beide beide in der Zwischenzeit auch gefunden. Ich werde mich mal in POSIX reinlesen.

Zu beidem gibt (wie fast immer) das Lawrence Livermore National Laboratory (llnl) gute Hinweise.

edit: @floschman
Ich habe eine Anwendung, die im momentanen Zustand auf einem P4C2.8 gut 1,5d rechnet :lol: Wenn ich noch die Spektren (eine weitere Dimension) in den MC-Code implementiere, dann rechnet der Rechner gut einen Monat ;) Deswegen muss ich auf einen Server (mit mehreren) Prozessoren gehen oder wenn es ganz hart kommt auf einen Großrechner.
Aber vorher will ich auf einem Q6600 testen und vielleicht auch mal CUDA auf ner 8800GTX ausprobieren. Vorher heist es aber : Reinlesen!

Den Code muss ich schon portieren können. Werde mit Sicherheit unter UNIX das laufen lassen (müssen). Zum Üben auf dem QuadCore werde ich Linux nehmen.

edit2:
Für die, die es interessiert: Die Anwendung ist ein 3D-Proble, was mittels Monte-Carlo gelöst wird. Im Moment benutze ich 100Mio Strahlen, damit das Ergebnis stabil ist, bzw. sich nur noch wenig verändert mit steigender Strahl-Anzahl. Es handelt sich um ein etwas komplizierteres Problem im Bereich Laser...
 
Zuletzt bearbeitet:
Zurück
Oben