Häufig gestellte Fragen zu ANSYS HFSS

Beim Senden eines ANSYS HFSS-Jobs mit HPC Bei Rescale ist es empfehlenswert, DEBUG-Dateien für den Fall eines Fehlers zu sammeln. Im Falle einer fehlgeschlagenen Analyse können die DEBUG-Dateien dann dem Rescale-Support zur Verfügung gestellt werden. Bitte Kontakt aufnehmen wenn du Probleme hast.

Im Befehlsfenster des Softwareeinstellungen Seite Ihres Job-Setups, fügen Sie die folgenden Befehle vor dem Ansys Electronics Desktop-Befehl hinzu ansysedt die Sie normalerweise ausführen. Ein Beispiel ist unten dargestellt:

export DEBUG_LOG_DIR=`pwd`/debug_logmkdir 
$DEBUG_LOG_DIR 2>/dev/null
export ANSOFT_DEBUG_LOG=$DEBUG_LOG_DIR/debug
export ANSOFT_DEBUG_LOG_SEPARATE=1
export ANSOFT_DEBUG_LOG_THREAD_ID=1
export ANSOFT_DEBUG_LOG_TIMESTAMP=1
export ANSOFT_DEBUG_MODE=2
export ANSOFT_PASS_DEBUG_ENV_TO_REMOTE_ENGINES=1
ansysedt -auto -distributed -monitor -machinelist file=$HOME/machinefile.hfss -ng -batchsolve test.aedt

Zusätzlich zur Ausführung der Analyse wird dadurch ein debug-log Verzeichnis innerhalb des Arbeitsverzeichnisses, das alle generierten Protokolle enthält. Es wird empfohlen, diese Befehle jedes Mal zu verwenden, wenn Sie einen ANSYS HFSS-Job im Stapelbetrieb übermitteln.

ANSYS Electronics Desktop unterstützt zwei Arten von HPC-Lizenzen: Pack- und Pool-Lizenzen. Wenn Sie einen Batch-Job über die ScaleX-Plattform wie HFSS oder Maxwell übermitteln, ist der Standardbefehl für die Verwendung der HPC-Pack-Lizenz eingerichtet. Um Ihre HPC-Pool-Lizenz zu verwenden, müssen Sie Ihrem Befehl das folgende Flag hinzufügen:

-batchoptions "'HFSS/HPCLicenseType'='Pool'"

Nachfolgend sehen Sie ein Beispiel für einen HFSS-Ausführungsbefehl mit dem HPC-Pool-Lizenzflag:

export TASKS_PER_NODE=-1 for host in `cat $HOME/machinefile`do     echo "$host:$TASKS_PER_NODE:$RESCALE_CORES_PER_NODE:90%" >> $HOME/work/machinefile.hfss done 
ansysedt -auto -distributed -monitor -machinelist file=$HOME/work/machinefile.hfss batchoptions "'HFSS/HPCLicenseType'='Pool'" -ng -batchsolve my-hfss-input-file.aedt

ANSYS Electronics bietet die Möglichkeit, die Aufgaben für einen verteilten Batch-Job automatisch oder manuell festzulegen. Weitere Informationen finden Sie im ANSYS Electromagnetics HPC-Administratorhandbuch für weitere Informationen zum automatischen und manuellen Modus.

Automatischer Modus

In diesem Modus bestimmt die ANSYS Electronics Software, wie die Aufgaben auf die verfügbaren Ressourcen verteilt werden sollen. In der Kommandozeile verwenden wir eine Umgebungsvariable, AUFGABE_PRO_KNOTEN. Wenn diese Variable auf -1 gesetzt ist, werden die Aufgaben automatisch auf die Kerne verteilt. Die -Auto Flag wird auch verwendet, um den automatischen Modus festzulegen. Die Befehlszeile sieht für den automatischen Modus wie folgt aus:

export TASKS_PER_NODE=-1
for host in `cat $HOME/machinefile`; do ssh ${host} "ansoftrsmservice start; RegisterEnginesWithRSM.pl add;"; echo ${host}:${TASKS_PER_NODE}:${RESCALE_CORES_PER_NODE}:90% >> $HOME/work/machinefile.hfss; done
ansysedt -auto -distributed -monitor -machinelist file=$HOME/work/ machinefile.hfss -ng -batchsolve ansys-hfss-electronics-example.aedtz

Manueller Modus

In diesem Modus können Benutzer die Gesamtzahl der Kerne und die Anzahl der Aufgaben pro Knoten (Und damit die Anzahl der Kerne pro Task). In der Befehlszeile können wir die Umgebungsvariable festlegen, AUFGABEN_PRO_KNOTEN zu ' 2 ' , ' 4 ' , ' 8 ', ' 16 ' usw. Zusätzlich müssen wir löschen  die -Auto Flagge.

Wenn wir beispielsweise 8 Kerne für einen Job verwenden und die Anzahl der Aufgaben pro Knoten auf 2 festlegen, benötigt jede Aufgabe 4 Kerne, was zu maximal zwei Aufgaben pro Host führt.

Für das obige Beispiel lautet die Befehlszeile auf der Rescale-Plattform wie folgt:

export TASKS_PER_NODE=2
for host in `cat $HOME/machinefile`; do ssh ${host} "ansoftrsmservice start; RegisterEnginesWithRSM.pl add;"; echo ${host}:${TASKS_PER_NODE}:${RESCALE_CORES_PER_NODE}:90% >> $HOME/work/machinefile.hfss; done
ansysedt -distributed -monitor -machinelist file=$HOME/work/ machinefile.hfss -ng -batchsolve ansys-hfss-electronics-example.aedtz

Die Standardbefehlszeile für ANSYS Electronics auf der Rescale-Plattform hat den Platzhalter Sie können einen der Designoptionstypen im Platzhalter angeben, indem Sie den Ausdruck in Anführungszeichen setzen:

  • "[designName]“ – Lösen Sie alle Setups für das Design mit dem unter dem Projekt angegebenen Namen im Stapel.
  • "[designName]:Nominal“ – Lösen Sie alle nominalen Setups für das Design mit dem unter dem Projekt angegebenen Namen im Stapel.
  • "[designName]:Optimetrics“ – Lösen Sie alle Optimetrics-Setups für das Design mit dem unter dem Projekt angegebenen Namen im Stapel.
  • "[designName]:Nominal:[Setupname]“ – Lösen Sie das angegebene nominale Setup für das Design im Batch mit dem unter dem Projekt angegebenen Namen. Der Setupname berücksichtigt keine Groß- und Kleinschreibung.
  • "[designName]:Optimetrie:[Setupname] – Lösen Sie das angegebene Optimetrics-Setup für das Design mit dem unter dem Projekt angegebenen Namen im Batch. Der Setupname berücksichtigt keine Groß- und Kleinschreibung.

Im Beispielproblem in der ANSYS HFSS-Batch-BeispielWenn wir den Nominalteil des zweiten Designs mit dem Namen „pcie_gen3_fab3_cutout“ lösen möchten, sieht die Befehlszeile wie folgt aus:

export TASKS_PER_NODE=-1
for host in `cat $HOME/machinefile`; do ssh ${host} "ansoftrsmservice start; RegisterEnginesWithRSM.pl add;"; echo ${host}:${TASKS_PER_NODE}:${RESCALE_CORES_PER_NODE}:90% >> $HOME/work/machinefile.hfss; done
ansysedt -auto -distributed -monitor -machinelist file=$HOME/work/machinefile.hfss -ng -batchsolve "pcie_gen3_fab3_cutout:Nominal" ansys-hfss-electronics-example.aedtz

Hinzufügen einer Flagge -batchextract in die Befehlszeile des Batch-Jobs, gefolgt von der Makrodatei. Siehe Beispiel unten:

export TASKS_PER_NODE=-1 
for host in `cat $HOME/machinefile` do ssh ${host} "ansoftrsmservice start; RegisterEnginesWithRSM.pl add;" echo ${host}:${TASKS_PER_NODE}:${RESCALE_CORES_PER_NODE}:90% >> $HOME/work/machinefile.hfss done 

ansysedt -auto -distributed -monitor -machinelist file=$HOME/work/machinefile.hfss -batchextract Sparameter_extract.py -batchoptions "" -ng -batchsolve ansys-hfss-electronics-example.aedtz

wo:

Sparameter_extract.py ist ein Nachbearbeitungsmakro, das in der HFSS-GUI aufgezeichnet ist

ansys-hfss-electronics-example.aedtz ist die HFSS-Eingabedatei

Hinweis dieses Flag funktioniert nur für HFSS Modell Typen, nicht mit 3D-Layout-Modelltypen

Wenn der Benutzer HFSS/Maxwell auf Quecksilber, Sonnenstein, Ferrit usw. Kerntypen, die IB-Umgebungsvariablen müssen vor den Ansys-Befehlszeilen und zusätzlichen Batch-Optionen festgelegt werden (-batchoption ” ‘<SOFTWARE>/MPIVendor’=‘Intel’ ”) müssen angegeben werden.

export I_MPI_DAPL_PROVIDER=ofa-v2-ib0
export I_MPI_DYNAMIC_CONNECTION=0
export I_MPI_DAPL_UD=0
export I_MPI_DAPL_TRANSLATION_CACHE=0
export I_MPI_FABRICS=shm:dapl
export TASKS_PER_NODE=-1
for host in `cat $HOME/machinefile`; do ssh ${host} "ansoftrsmservice start; RegisterEnginesWithRSM.pl add;"; echo ${host}:${TASKS_PER_NODE}:${RESCALE_CORES_PER_NODE}:90% >> $HOME/work/machinefile.hfss; done
ansysedt -auto -distributed -monitor -machinelist file=$HOME/work/ machinefile.hfss -batchoption ” ‘HFSS/MPIVendor’=‘Intel’ ” -ng -batchsolve ansys-hfss-electronics-example.aedtz

Ab HFSS 2020R1 sind die Produktfunktionen für Elektronikprodukte nun Electronics Pro, Premium und Enterprise. Es gibt bestimmte Funktionen, wie z. B. elec_solve_hfss die dies erfordern Zulassung Das Schema muss aktiv sein, um verfügbar zu sein.

Um diese Funktion zu aktivieren, -useelectronicsppe Argument muss hinzugefügt werden zu -batchoptions Flagge. Ein Beispiel für die Verwendung dieser Flagge in einem ansysedt Die Ausführung ist unten zu sehen:

ansysedt -auto -distributed -monitor -machinelist file=$HOME/work/machinefile.hfss -batchoptions "'HFSS/UseLegacyElectronicsHPC'=0" -useelectronicsppe -ng -batchsolve QDD112_DFM0831_RowD_PlugR5b_HostV5_Statistical_20200901_3_Case4.aedt