2017-04-04 3 views
1

Ich bin neu bei Condor und versuche mein Python-Programm auf Condor auszuführen, habe aber Schwierigkeiten damit. Alle Tutorials, die ich gefunden habe, gehen von einem einzigen Python-Programm aus, aber mein Python-Programm besteht aus mehreren Paketen und Dateien und benutzt auch andere Bibliotheken wie numpy und scipy. Wie kann ich Condor in diesem Fall mein Programm ausführen lassen? Soll ich das Programm in eine Art ausführbare Datei konvertieren? Oder gibt es eine Möglichkeit, Python-Quellcodes in eine Condor-Maschine zu übertragen und Python auf Condor den Quellcode ausführen zu lassen?Wie führe ich ein Python-Programm auf Condor?

Danke,

+0

Haben Sie etwas dagegen zu teilen, was Sie kam mit? Ich dachte darüber nach, ein virtuelles env für alle Knoten zu installieren und dann das virtuelle env zu aktivieren, um das gesamte virtuelle env zusammen mit jedem Job zu zippen. – teng

Antwort

1

Ihre Aufträge benötigen eine ganze Python-Installation (einschließlich SciPy und NumPy) mit sich bringen. Dazu müssen Sie eine Python-Installation in einem lokalen Verzeichnis (möglicherweise in einem interaktiven HTCondor-Job) erstellen, die erforderlichen Bibliotheken in dieser lokalen Python-Installation installieren und dann ein Tarball der Installation erstellen, die Sie als transfer_input_files angeben. Sie müssen in Ihrem Job ein Wrapper-Skript verwenden, das Ihre Python-Installation entfernt und Ihren Job auf die richtige Python-Programmdatei verweist, bevor Sie Ihre Python-Skripte ausführen.

Hier ist ein Clusters explaination dafür, wie dies zu tun: http://chtc.cs.wisc.edu/python-jobs.shtml

Verwandte Themen