Μετάβαση στο περιεχόμενο

Περιγραφή

ANSYS CFX is a high-performance computational fluid dynamics (CFD) software tool that delivers reliable and accurate solutions quickly and robustly across a wide range of CFD and multi-physics applications. CFX is recognized for its outstanding accuracy, robustness and speed with rotating machinery such as pumps, fans, compressors, and gas and hydraulic turbines.

CFX 2023R2

Διαχείριση αδειών

Το πανεπιστήμιο διαθέτει συγκεκριμένο αριθμό αδειών για τη χρήση του Ansys, επισκόπηση των οποίων μπορεί να γίνει από ένα login node (aristotle.it.auth.gr) μέσω της εντολής:

# module load ansys
# lmutil lmstat -c 1055@ansys.it.auth.gr -f anshpc

Σε αρκετές περιπτώσεις και ιδιαίτερα όταν οι εργασίες που υποβάλλονται απαιτούν πολλούς πόρους (nodes και cores), καθώς ο scheduler (slurm) δεν λαμβάνει υπόψιν τις διαθέσιμες άδειες λογισμικού ενδέχεται μία εργασία να τερματίσει απροσδόκητα λόγω μην επαρκών αδειών anshpc στο license server.

Μια λύση για τη παράκαμψη της συγκεκριμένης ιδιαιτερότητας είναι η χρήση της μεταβλητής #SBATCH --licenses=ansys@ansys.it.auth.gr:X όπου μπορεί να οριστεί και ο απαιτούμενος αριθμός αδειών X που επιθυμούμε για να την εργασία που θέλουμε να υποβάλουμε. Ο αριθμός αυτός υπολογίζεται εαν εκτιμήσουμε τον συνολικό αριθμό των πυρήνων (nodes*tasks_per_node) που ζητάμε απο την εργασία και αφαιρέσουμε τους 4 πυρήνες για τους οποίους δεν χρεώνει ο license manager καμία άδεια.

Παράδειγμα

Για ένα job με τις παρακάτω ρυθμίσεις:

#SBATCH --ntasks-per-node=16
#SBATCH --nodes=2
ο συνολικός αριθμός αδειών που θα χρειαστεί είναι 2*16-4=28, τον οποιο και ορίζουμε με την παρακάτω μεταβλητή:
#SBATCH --licenses=ansys@ansys.it.auth.gr:28
Αυτό δεσμεύει εσωτερικά το slurm από το να ξεκινήσει το job εως ότου υπάρχουν όντως διαθέσιμες άδειες στον license server προκειμένου να ξεκινήσει.

Παράδειγμα χρήσης

Στο $HOME μας στο login node, δημιουργούμε ένα νέο φάκελο όπου τοποθετούμε τα αρχεία εισόδου και το script υποβολής της εργασίας.

# mkdir CFX-2023R2-case
# cd CFX-2023R2-case

Θα χρησιμοποιήσουμε ένα από τα παραδείγματα (examples) της εφαρμογής. Για το σκοπό αυτό διαμορφώνουμε κατάλληλα το περιβάλλον χρήσης και αντιγράφουμε τα δεδομένα εισόδου του παραδείγματος StaticMixer μέσα στο φάκελο:

# module load ansys/2023R2
# cp /mnt/apps/prebuilt/ansys/2021R1/v211/CFX/examples/StaticMixer.def .

Το script που θα χρησιμοποιήσουμε εμφανίζεται παρακάτω:

SLURM submission script
#!/bin/bash
#SBATCH --job-name=cfx-2023R2-case
#SBATCH --partition=batch
#SBATCH --ntasks-per-node=20
#SBATCH --nodes=1
#SBATCH --licenses=ansys@ansys.it.auth.gr:16
#SBATCH --time=10:00

# Load Ansys module
module load ansys/2023R2

# Define the hosts and distribution of the parallel proccess
nodes=$(srun hostname | sort | uniq -c| awk '{print $2 "*" $1}'|paste -sd,)

# Start CFX-Solver in Parallel
cfx5solve -batch -par-dist $nodes -def StaticMixer.def -start-method "Intel MPI SLURM"
Εργασίες CFX σε περισσότερα από ένα nodes

Το ίδιο script μπορεί να χρησιμοποιηθεί για την εκτέλεση εργασιών Ansys CFX σε περισσότερα από ένα nodes. Αρκεί να τροποποιηθούν τα directives που αναφέρονται στην κατανομή των διεργασιών. Για παράδειγμα ως εξής:

#SBATCH --nodes=2
#SBATCH --ntasks-per-node=20
#SBATCH --licenses=ansys@ansys.it.auth.gr:36

Αποθηκεύουμε τα περιεχόμενα σε ένα νέο αρχείο (έστω CFX-2023R2-case.sh) και το υποβάλλουμε προς εκτέλεση με την εντολή:

# sbatch CFX-2023R2-case.sh

Παρακολουθούμε με squeue την εξέλιξη της εργασίας.

Eφόσον η εργασία έχει εκκινήσει μπορούμε να ελέγχουμε την πρόοδο της επίλυσης μέσω των αρχείων εξόδου. Π.χ.:

# tail -f StaticMixer_001.out

Γραφικό Περιβάλλον

Για να χρησιμοποιήσουμε το γραφικό περιβάλλον του Ansys στην συστοιχία μπορούμε να επισκεφτούμε με έναν browser την σελίδα: https://hpc.auth.gr και να ακολουθήσουμε τα παρακάτω βήματα:

  1. Από το menu επιλέγουμε Interactive Apps -> ANSYS Workbench

  2. Στην συνέχεια επιλέγουμε στην φόρμα την έκδοση του Ansys, το χρονικό διάστημα (σε ώρες) και τον αριθμό των CPU cores που θέλουμε να χρησιμοποιήσουμε:

    Ansys Workbench Form

  3. Eφόσον η εργασία ξεκινήσει, μπορούμε να επιλέξουμε Launch ANSYS Workbench.

  4. Αφού ανοίξουμε το Workbench, μπορούμε να επιλέξουμε το CFX από το Toolbox menu με drag and drop στο Project Schematic.

    Ansys Fluent

  5. Με double clik μπορούμε να επεξεργαστούμε τα components και να ξεκινήσουμε το CFX.