WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Skript für LInux-Server mit 4 CPU's (http://www.wcm.at/forum/showthread.php?t=212447)

Erechtheus 21.03.2007 11:04

Skript für LInux-Server mit 4 CPU's
 
Hi Leute!

Ich habe in Perl und Python ein kleines Programm geschrieben. Die Anwendung wird auf 24 Files ausgeführt und rechnet pro FIle zwischen einer und drei Stunden. Da ich einen Server mit 4 CPU's zur Verfügung habe, kann ich die Anwendung immer auf 4 FIles starten. Anschließed muss ich warten bis eine CPU fertig gerechnet hat und kann dann den nächsten Job starten.

Nun möchte ich gerne ein kleines Skript implementieren, welches automatisch den nächsten Job startet sobald eine CPU wieder nichts mehr zu tun hat. Kennt für dieses Problem jemand eine Programmier/Skript-Sprache und den benötigten Befehl?

Vielen Dank im Voraus

Who-T 22.03.2007 11:47

python macht nicht wirklich nutzen von mehreren cpus, du musst mehrere prozesse starten. mit taskset (apt-get install shedutils) kannst du dann einen process auf eine cpu binden. dann einfach wenn ein prozess ended, auf derselben cpu einen neuen starten.

Erechtheus 22.03.2007 15:31

IHi!

Danke für die Antwort. Ich versuchs gerade in Python mit dem Modul subprocess.

Mit dem Befehl:
a=subprocess.popen(cmd,shell=True)
b=subprocess.popen(cmd,shell=True)
...
starte ich mehrere Prozesse.

mit dem Befehl a.poll() kann man überprüfen ob der Prozess beendet ist. Sobald einer beendet ist starte ich den nächsten.
Bin allerdings noch nicht ganz fertig, kann also sen, dass es so doch nicht funktioniert:)


Alle Zeitangaben in WEZ +2. Es ist jetzt 10:38 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag