marvinatorVC
Neuling
- Mitglied seit
- Jan 27, 2021
- Beiträge
- 4
- Bewertungspunkte
- 0
- Punkte
- 1
Hallo zusammen,
ich habe eine ziemliche Odyssee hinter mir, um zu erreichen, dass ANSYS Mechanical meinen 3800X voll auslastet.
Die Problematik, dass die bei ANSYS Mechanical (und auch MATLAB) verwendete Intel Math Kernel Library (MKL) AMD Hardware stark benachteiligt, ist seit einiger Zeit ein bekanntes Problem. Der Fix hierfür war bisher, dass eine System-Umgebungsvariable gesetzt wurde, welche die MKL in einen Debug-Modus versetzt und somit unabhängig von der Vendor-ID der CPU den bestmöglichen Befehlssatz (AVX2 im Falle von Matisse) benutzt.
Nun war der bisherige Konsens, dass dieser Trick bis zur MKL Version 2020.0.0 funktionieren sollte. Das stimmt aber zumindest im Falle von Ansys Mechanical scheinbar nicht!
Ich habe lange herumprobiert und recherchiert, aber alle Versuche die Rechenleistung meines Prozessors zu steigern blieben erfolglos.
Letztendlich habe ich eine ältere Version heruntergeladen (2019R1). Nun funktioniert der Trick mit der Umgebungsvariable zwar, jedoch nur, wenn das Projekt auch in R2019 erstellt wurde. Startet man Mechanical APDL 2019 im Batch-Modus und lädt ein mit 2020R2 erstelltes Input-file, ist man wieder bei der gähnend langsamen Rechenleistung unterwegs!
Merkwürdig ist das, was passiert, wenn man nun das in 2019R1 erstellte Projekt in 2020R2 öffnet und berechnet; nun ist auch in 2020R2 eine erhebliche Steigerung der Rechenleistung feststellbar! Das finde ich hochgradig eigenartig...
Weiß einer vielleicht woran das genau liegt, dass der Trick nur dann in 2020R2 funktioniert, wenn man ein in R2019 erstelltes Projekt lädt?
Laut Solver-output File wurde dabei die "neue" Version der MKL 2020.0.0 genutzt.
Die Umgebungsvariable, die gesetzt werden muss und ihr Wert lautet: MKL_DEBUG_CPU_TYPE=5
Vielleicht helfen meine Erkenntnisse ja jemandem, der das gleiche Problem hat!
Schönen Abend noch,
Marvin
ich habe eine ziemliche Odyssee hinter mir, um zu erreichen, dass ANSYS Mechanical meinen 3800X voll auslastet.
Die Problematik, dass die bei ANSYS Mechanical (und auch MATLAB) verwendete Intel Math Kernel Library (MKL) AMD Hardware stark benachteiligt, ist seit einiger Zeit ein bekanntes Problem. Der Fix hierfür war bisher, dass eine System-Umgebungsvariable gesetzt wurde, welche die MKL in einen Debug-Modus versetzt und somit unabhängig von der Vendor-ID der CPU den bestmöglichen Befehlssatz (AVX2 im Falle von Matisse) benutzt.
Nun war der bisherige Konsens, dass dieser Trick bis zur MKL Version 2020.0.0 funktionieren sollte. Das stimmt aber zumindest im Falle von Ansys Mechanical scheinbar nicht!
Ich habe lange herumprobiert und recherchiert, aber alle Versuche die Rechenleistung meines Prozessors zu steigern blieben erfolglos.
Letztendlich habe ich eine ältere Version heruntergeladen (2019R1). Nun funktioniert der Trick mit der Umgebungsvariable zwar, jedoch nur, wenn das Projekt auch in R2019 erstellt wurde. Startet man Mechanical APDL 2019 im Batch-Modus und lädt ein mit 2020R2 erstelltes Input-file, ist man wieder bei der gähnend langsamen Rechenleistung unterwegs!
Merkwürdig ist das, was passiert, wenn man nun das in 2019R1 erstellte Projekt in 2020R2 öffnet und berechnet; nun ist auch in 2020R2 eine erhebliche Steigerung der Rechenleistung feststellbar! Das finde ich hochgradig eigenartig...
Weiß einer vielleicht woran das genau liegt, dass der Trick nur dann in 2020R2 funktioniert, wenn man ein in R2019 erstelltes Projekt lädt?
Laut Solver-output File wurde dabei die "neue" Version der MKL 2020.0.0 genutzt.
Die Umgebungsvariable, die gesetzt werden muss und ihr Wert lautet: MKL_DEBUG_CPU_TYPE=5
Vielleicht helfen meine Erkenntnisse ja jemandem, der das gleiche Problem hat!
Schönen Abend noch,
Marvin