simpsonsfan
Captain
- Registriert
- Feb. 2008
- Beiträge
- 3.261
Hallo zusammen,
ich war mir mal wieder nicht sicher, in welches Unterforum ich das posten soll, also versuche ich es halt mal hier.
Ich habe auf der Arbeit gerade ein System mit Intel Knights Landing (Xeon Phi 7230) zur Verfügung und würde gerne abschätzen, welche Performance dabei mit einem bestimmten CAE/FEM-Programm möglich ist.
Die Sache ist nun, ich bin mir nicht sicher, ob diese Software bereits Instruktionen von AVX-512 nutzt oder ob dort noch Potential vorhanden wäre.
Daher die Frage: Gibt es eine Möglichkeit, zu erkennen, welche Befehlssatzerweiterungen eine als binary ausgelieferte Anwendung nutzt?
Ich stecke selbst eigentlich nicht in der Materie und bin da eher ein bisschen am rumspielen.
Aus einem Intelartikel zur Performancesteigerung durch die Einführung von AVX2 habe ich entnommen, dass man mit der Conditional Numerical Reproducibility durch Setzen der Umgebungsvariable MKL_CBWR auf SSE, AVX oder AVX2 die Auswirkungen der verschiedenen Extenstions auf die Performance testen könne.
Wenn ich den Intel optimized LINPACK benchmark laufen lasse, sehe ich dann auch deutliche Unterschiede je nachdem, ob ich diese Umgebungsvariable auf AVX, AVX2 oder AVX512 (vzw. AUTO) setze.
Wenn ich die FEM-Software auf dem selben Wege ausführe, dann sehe ich bei AVX eine reduzierte Performance, zwischen AVX2 und AUTO jedoch quasi keine Unterschiede.
Die FEM-Software verwendet die Intel MKL 11.2.3 welche ja wohl bereits AVX-512 unterstützen sollte (wobei linpack die MKL 11.3.3 aufruft.)
Heißt das jetzt, dass die FEM-Software eben noch gar kein AVX-512 nutzt und dass durch spätere Einpflegung dessen noch ein Leistungsgewinn zu erwarten ist? Bzw. kann ich irgendwie sehen, welche Instruktionen die Anwendung bei der Ausführung jeweils aufruft?
Für eure Meinung und Tipps hierzu wäre ich euch sehr dankbar.
Viele Grüße,
simpsonsfan.
ich war mir mal wieder nicht sicher, in welches Unterforum ich das posten soll, also versuche ich es halt mal hier.
Ich habe auf der Arbeit gerade ein System mit Intel Knights Landing (Xeon Phi 7230) zur Verfügung und würde gerne abschätzen, welche Performance dabei mit einem bestimmten CAE/FEM-Programm möglich ist.
Die Sache ist nun, ich bin mir nicht sicher, ob diese Software bereits Instruktionen von AVX-512 nutzt oder ob dort noch Potential vorhanden wäre.
Daher die Frage: Gibt es eine Möglichkeit, zu erkennen, welche Befehlssatzerweiterungen eine als binary ausgelieferte Anwendung nutzt?
Ich stecke selbst eigentlich nicht in der Materie und bin da eher ein bisschen am rumspielen.
Aus einem Intelartikel zur Performancesteigerung durch die Einführung von AVX2 habe ich entnommen, dass man mit der Conditional Numerical Reproducibility durch Setzen der Umgebungsvariable MKL_CBWR auf SSE, AVX oder AVX2 die Auswirkungen der verschiedenen Extenstions auf die Performance testen könne.
Wenn ich den Intel optimized LINPACK benchmark laufen lasse, sehe ich dann auch deutliche Unterschiede je nachdem, ob ich diese Umgebungsvariable auf AVX, AVX2 oder AVX512 (vzw. AUTO) setze.
Wenn ich die FEM-Software auf dem selben Wege ausführe, dann sehe ich bei AVX eine reduzierte Performance, zwischen AVX2 und AUTO jedoch quasi keine Unterschiede.
Die FEM-Software verwendet die Intel MKL 11.2.3 welche ja wohl bereits AVX-512 unterstützen sollte (wobei linpack die MKL 11.3.3 aufruft.)
Heißt das jetzt, dass die FEM-Software eben noch gar kein AVX-512 nutzt und dass durch spätere Einpflegung dessen noch ein Leistungsgewinn zu erwarten ist? Bzw. kann ich irgendwie sehen, welche Instruktionen die Anwendung bei der Ausführung jeweils aufruft?
Für eure Meinung und Tipps hierzu wäre ich euch sehr dankbar.
Viele Grüße,
simpsonsfan.