Frage

Ich habe Zugang zu einem 128-Core-Cluster, auf das Ich mag würde einen parallelisierte Job ausgeführt werden soll. Der Cluster verwendet Sun Gridengine und mein Programm geschrieben 2.5.8 mit Parallel Python, numpy, scipy auf Python laufen. Das Ausführen des Job auf einem einzelnen Knoten (4-Kerne) ergibt sich eine ~ 3,5x Verbesserung gegenüber einem einzelnen Kern. Ich möchte nun diese auf die nächste Stufe zu nehmen und den Job über ~ 4 Knoten aufgeteilt. Mein qsub Skript sieht etwa so aus:

#!/bin/bash
# The name of the job, can be whatever makes sense to you
#$ -N jobname

# The job should be placed into the queue 'all.q'.
#$ -q all.q

# Redirect output stream to this file.
#$ -o jobname_output.dat

# Redirect error stream to this file.

#$ -e jobname_error.dat

# The batchsystem should use the current directory as working directory.
# Both files will be placed in the current
# directory. The batchsystem assumes to find the executable in this directory.
#$ -cwd

# request Bourne shell as shell for job.
#$ -S /bin/sh

# print date and time
date

# spython is the server's version of Python 2.5. Using python instead of spython causes the program to run in python 2.3
spython programname.py

# print date and time again
date

hat jemand eine Idee, wie dies zu tun?

War es hilfreich?

Lösung

Ja, müssen Sie die Grid Engine Option -np 16 entweder in Ihrem Skript wie folgt enthalten:

# Use 16 processors
#$ -np 16

oder auf der Befehlszeile, wenn Sie das Skript einreichen. Oder, für mehr Dauervereinbarungen, verwenden Sie eine .sge_request Datei.

Auf allen GE Installationen habe ich je benutzt dies wird Ihnen 16 Prozessoren (oder Prozessorkerne in diesen Tagen) auf möglichst wenige Knoten nach Bedarf, also wenn Ihre Knoten 4 Kerne werden Sie 4 Knoten erhalten, wenn sie 8 2 und so weiter. Um Platz den Job auf, sagen wir 2 Kerne auf 8 Knoten (die Sie vielleicht tun, wenn Sie eine Menge Speicher für jeden Prozess müssen) ist ein wenig komplizierter, und Sie sollten Ihre Support-Team wenden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top