Neu in

Intel Math Kernel Library (MKL)

Stata 17 bietet tief optimierte LAPACK-Routinen durch Verwendung der Intel Math Kernel Library (MKL) auf kompatibler Hardware (alle Intel- und AMD-basierten 64-Bit-Rechner).
LAPACK (Linear Algebra PACKage) ist ein frei verfügbarer Satz von Routinen zum Lösen von Systemen simultaner Gleichungen, Eigenwertproblemen und Singulärwertproblemen u.a. Die Mata-Operatoren und -Funktionen qrd(), lud(), cholesky() usw. nutzen LAPACK wo immer möglich für viele numerische Operationen.
LAPACK, unterstützt durch Intel MKL, bietet die neuesten LAPACK-Routinen, die stark für den 64-Bit Intel x86-64-Befehlssatz optimiert sind, der sowohl von modernen Intel- als auch von modernen AMD-Prozessoren verwendet wird. Mata-Funktionen und -Operatoren, die MKL verwenden, profitieren in hohem Maße von der Leistung.

Höhepunkte

  • Stark verbesserte Performance für Mata-Funktionen und -Operatoren mit LAPACK-Routinen
  • Aktuelle Algorithmus-Updates und Verbesserungen der LAPACK-Routinen

Zum Beispiel:

Zeitliche Abfolge der Multiplikation von zwei reellen Matrizen in Sekunden:

Edition Size MKL non-MKL
MP8 5,000 by 5,000 2.55 10.26
MP8 10,000 by 10,000 17.28 85.60
   
MP4 5,000 by 5,000 3.62 15.95
MP4 10,000 by 10,000 28.22 127.24
   
SE 5,000 by 5,000 13.64 70.61
SE 10,000 by 10,000 108.33 566.99

Timings run in Windows 10 on a computer with an i9-9900KS processor at 4.00GHz and 64GB RAM

Timing von cholesky() in Sekunden:

Edition Size MKL non-MKL
MP8 5,000 by 5,000 0.42 16.69
MP8 10,000 by 10,000 2.91 133.60
   
MP4 5,000 by 5,000 0.69 16.69
MP4 10,000 by 10,000 5.03 133.70
   
SE 5,000 by 5,000 2.41 18.62
SE 10,000 by 10,000 16.66 133.63
Timings run in Windows 10 on a computer with an i9-9900KS processor at 4.00GHz and 64GB RAM

Und das Wichtigste: Sie müssen nichts tun, um den Geschwindigkeitsvorteil zu nutzen. Stata-Befehle, die diese Mata-Funktionen und -Operatoren verwenden, sowie die Mata-Funktionen und -Operatoren selbst, nutzen auf kompatibler Hardware automatisch die Intel MKL.

Referenz

Anderson, E., Z. Bai, C. Bischof, S. Blackford, J. Demmel, J. J. Dongarra, J. Du Croz, A. Greenbaum, S. Hammarling, A. McKenney, and D. Sorensen. 1999. LAPACK Users’ Guide. 3rd ed. Philadelphia: Society for Industrial and Applied Mathematics.
Rosenquist, T. 2011. Getting reproducible results with Intel MKL. https://software.intel.com/content/www/us/en/develop/articles/getting-reproducible-results-with-intel-mkl.html.
Intel oneAPI Math Kernel Library. https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onemkl.html.