Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

Version 1 Nächste Version anzeigen »

Da nicht jedes Programm vom HPC-Team optimiert werden kann, da es beispielsweise nur in Binär-Form vorliegt, reicht es, wenn man die Binär-Dateien in sein Homeverzeichnis kopiert. Da diese auf allen Rechenknoten unter demselben Pfad zur verfügung steht, kann man somit das Programm in seinen Job-Scripten verwenden.

 

Muss jedoch Software kompiliert werden sind mehrere Dinge zu beachten. Alle Komponenten im Cluster laufen auf Intel-Prozessoren mit x86_64 jedoch aus unterschiedlichen Generationen. Wenn man nun sein Programm auf hpc-login kompiliert, dann sollte man keine besonderen Optimierungen verweden und auch nicht auf spezielle Chip-Erweiterungen setzen. Da diese möglicherweise nicht auf den anderen Systemen zur verfügung stehen.

 

Um ein Programm genau auf die Hardware der Rechenknoten zu optimieren empfieht es sich somit einen Job zu schreiben der das Programm kompiliert.

Falls dabei der Intel-Compiler (module load intel) verwendet wird, sollten im ersten Schritt die folgenden Compiler-Optionen gesetzt werden.

Intel-Compiler-Flags
-O2 -xHost

Weiter Optimierungs-Optionen finden sich auf der Intel-Webseite.

 

Falls der GCC verwendet wird, sollten die folgenden Compiler-Optionen gesetzt werden.

GCC-Flags
-O2 -march=native -mtune=native

 

Mit diesen Flags sollte das Programm einen großteil der möglichen Optimierungen für das System beinhalten und sicher laufen.

Nachdem das Programm kompiliert wurde kann es im Homeverzeichnis gespeichert werden und für weitere Jobs verwendet werden.

 

Jobs ohne Angabe einer Architektur können auf der UV2000 und den Ivybridge-Knoten starten. Es empfiehlt sich also eine Erkennung dafür in das Job-Script zu packen und abhängig vom System ein anderes Binary zu starten.

 

 

  • Keine Stichwörter