„Math Kernel Library“ – Versionsunterschied
[gesichtete Version] | [gesichtete Version] |
K 2020 ist die aktuelle Version |
Keine Bearbeitungszusammenfassung |
||
(3 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
Zeile 21: | Zeile 21: | ||
|Dateien = |
|Dateien = |
||
}} |
}} |
||
Die Intel '''Math Kernel Library''' (Intel MKL) ist eine [[Programmbibliothek]] für mathematische Berechnungen von |
Die Intel '''Math Kernel Library''' (Intel MKL) ist eine [[Programmbibliothek]] für mathematische Berechnungen von [[Intel]]. Hauptbestandteile sind [[Basic Linear Algebra Subprograms]] (BLAS), [[LAPACK]], [[ScaLAPACK]], [[Solver]] für [[Dünnbesetzte Matrix|dünnbesetzte Matrizen]], [[schnelle Fourier-Transformation]]en und Vektormathematik.<ref>{{Internetquelle |url=https://kb.iu.edu/d/axdz |titel=What is the Intel Math Kernel Library, and where is it installed at IU and on XSEDE? |autor=Indiana University |hrsg=[[Indiana University System]] |werk=Indiana University |datum=2015-08-20 |zugriff=2017-03-25 |sprache=en}}</ref> |
||
Die Math Kernel Library wurde von Intel am 9. Mai 2003 veröffentlicht. Sie eignet sich besonders für Intel-[[Mikroprozessor]]en und Einsatz im [[Multithreading]].<ref>{{Internetquelle |url= |
Die Math Kernel Library wurde von Intel am 9. Mai 2003 veröffentlicht. Sie eignet sich besonders für Intel-[[Mikroprozessor]]en und Einsatz im [[Multithreading]].<ref>{{Internetquelle |url= https://insidehpc.com/2017/03/intel-mkl-intel-tbb-together/ |titel=Intel MKL and Intel TBB Working Together for Performance |autor=Richard Friedman |hrsg=insideHPC Media |werk=Inside HPC |datum=2017-03-23 |zugriff=2017-03-25 |sprache=en}}</ref> Nicht von Intel stammende Prozessoren werden benachteiligt, da dort weitaus langsamerer Programmcode läuft als nötig, teilweise beobachtet werden Verlangsamungen um den Faktor 3–10<ref>{{Internetquelle |url=https://www.pugetsystems.com/labs/hpc/AMD-Ryzen-3900X-vs-Intel-Xeon-2175W-Python-numpy---MKL-vs-OpenBLAS-1560/ |titel=AMD Ryzen 3900X vs Intel Xeon 2175W Python numpy - MKL vs OpenBLAS |abruf=2019-12-11 |sprache=en}}</ref>, leistungssteigernde Befehlssätze wie AVX werden nicht genutzt, obwohl möglicherweise vorhanden. Mittlerweile gibt es mehrere Workarounds, welche es erlauben, das nach CPU-Hersteller diskriminierende Verhalten der MKL zu umgehen.<ref>{{Internetquelle |url=https://www.pugetsystems.com/labs/hpc/How-To-Use-MKL-with-AMD-Ryzen-and-Threadripper-CPU-s-Effectively-for-Python-Numpy-And-Other-Applications-1637/ |titel=How To Use MKL with AMD Ryzen and Threadripper CPU's (Effectively) for Python Numpy (And Other Applications) |abruf=2019-12-11 |sprache=en}}</ref><ref>{{Internetquelle |url=https://danieldk.eu/Posts/2020-08-31-MKL-Zen.html |titel=Daniël de Kok: Intel MKL on AMD Zen |abruf=2020-10-28}}</ref> |
||
Für die Nutzung wird eine Lizenz benötigt, wobei es eine kostenlose Community-License gibt. Die Bibliothek unterstützt [[C (Programmiersprache)|C]], [[C++]] und [[Fortran]] nativ und ist mit [[Java (Programmiersprache)|Java]], [[C-Sharp|C#]], [[Python (Programmiersprache)|Python]]<ref>{{Internetquelle |url=https://www.heise.de/developer/meldung/Intel-konfektioniert-Distribution-fuer-Python-Entwickler-3143055.html |titel=Intel konfektioniert Distribution für Python-Entwickler |autor=Alexander Neumann |hrsg=Heise Medien GmbH & Co. KG |werk=[[Heise online|heise Developer]] |datum=2016-03-21 |zugriff=2017-03-25 |sprache=de}}</ref> und anderen Sprachen kompatibel. |
Für die Nutzung wird eine Lizenz benötigt, wobei es eine kostenlose Community-License gibt. Die Bibliothek unterstützt [[C (Programmiersprache)|C]], [[C++]] und [[Fortran]] nativ und ist mit [[Java (Programmiersprache)|Java]], [[C-Sharp|C#]], [[Python (Programmiersprache)|Python]]<ref>{{Internetquelle |url=https://www.heise.de/developer/meldung/Intel-konfektioniert-Distribution-fuer-Python-Entwickler-3143055.html |titel=Intel konfektioniert Distribution für Python-Entwickler |autor=Alexander Neumann |hrsg=Heise Medien GmbH & Co. KG |werk=[[Heise online|heise Developer]] |datum=2016-03-21 |zugriff=2017-03-25 |sprache=de}}</ref> und anderen Sprachen kompatibel. |
||
Im Bereich der [[Numerische lineare Algebra|numerischen linearen Algebra]] sind BLAS und LAPACK enthalten und um performantere Berechnungen erweitert worden. Dazu zählen etwa [[ |
Im Bereich der [[Numerische lineare Algebra|numerischen linearen Algebra]] sind BLAS und LAPACK enthalten und um performantere Berechnungen erweitert worden. Dazu zählen etwa [[Gaußsches Eliminationsverfahren#LR-Zerlegung|LR]]-, [[Cholesky-Zerlegung|Cholesky]]- und [[QR-Zerlegung]], [[Eigenwertproblem]]e sowie die [[Methode der kleinsten Quadrate]]. Die Math Kernel Library enthält schnelle Fourier-Transformationen (FFT) für beliebig viele Dimensionen und unterschiedliche Datentypen. Ebenso wie die FFTs ist auch LAPACK als Clusterversion enthalten. Vektormathematische Funktionen sind mit [[Einfache Genauigkeit|einfacher]] und [[Doppelte Genauigkeit|doppelter Genauigkeit]] implementiert sowie für [[Komplexe Zahl|komplexe]] und [[Gleitkommazahl]]en verfügbar. Im Bereich Statistik gibt es unter anderem [[Zufallszahlengenerator]]en und [[Wahrscheinlichkeitsverteilung]]en. Es sind verschiedene [[Spline]]s zur [[Interpolation (Mathematik)|Interpolation]] enthalten. Die Math Kernel Library verfügt über Funktionen für [[Neuronales Netz|neuronale Netze]] (z. B. [[Backpropagation]]).<ref>{{Internetquelle |url=https://software.intel.com/en-us/intel-mkl/details|titel=Intel Math Kernel Library |autor=Intel |hrsg=Intel Corp. |werk=Intel |datum= |zugriff=2017-03-25 |sprache=en}}</ref> |
||
<!-- == Literatur == --> |
<!-- == Literatur == --> |
Aktuelle Version vom 8. Januar 2024, 11:40 Uhr
Math Kernel Library | |
---|---|
Basisdaten
| |
Hauptentwickler | Intel |
Entwickler | Intel |
Erscheinungsjahr | 2003 |
Aktuelle Version | MKL 2020 (11. Dezember 2019) |
Betriebssystem | Unixoide, mac OS X, Microsoft Windows |
Programmiersprache | C, C++, Fortran |
Kategorie | Programmbibliothek für Mathematik |
Lizenz | proprietär |
software.intel.com/en-us/intel-mkl |
Die Intel Math Kernel Library (Intel MKL) ist eine Programmbibliothek für mathematische Berechnungen von Intel. Hauptbestandteile sind Basic Linear Algebra Subprograms (BLAS), LAPACK, ScaLAPACK, Solver für dünnbesetzte Matrizen, schnelle Fourier-Transformationen und Vektormathematik.[1]
Die Math Kernel Library wurde von Intel am 9. Mai 2003 veröffentlicht. Sie eignet sich besonders für Intel-Mikroprozessoren und Einsatz im Multithreading.[2] Nicht von Intel stammende Prozessoren werden benachteiligt, da dort weitaus langsamerer Programmcode läuft als nötig, teilweise beobachtet werden Verlangsamungen um den Faktor 3–10[3], leistungssteigernde Befehlssätze wie AVX werden nicht genutzt, obwohl möglicherweise vorhanden. Mittlerweile gibt es mehrere Workarounds, welche es erlauben, das nach CPU-Hersteller diskriminierende Verhalten der MKL zu umgehen.[4][5]
Für die Nutzung wird eine Lizenz benötigt, wobei es eine kostenlose Community-License gibt. Die Bibliothek unterstützt C, C++ und Fortran nativ und ist mit Java, C#, Python[6] und anderen Sprachen kompatibel.
Im Bereich der numerischen linearen Algebra sind BLAS und LAPACK enthalten und um performantere Berechnungen erweitert worden. Dazu zählen etwa LR-, Cholesky- und QR-Zerlegung, Eigenwertprobleme sowie die Methode der kleinsten Quadrate. Die Math Kernel Library enthält schnelle Fourier-Transformationen (FFT) für beliebig viele Dimensionen und unterschiedliche Datentypen. Ebenso wie die FFTs ist auch LAPACK als Clusterversion enthalten. Vektormathematische Funktionen sind mit einfacher und doppelter Genauigkeit implementiert sowie für komplexe und Gleitkommazahlen verfügbar. Im Bereich Statistik gibt es unter anderem Zufallszahlengeneratoren und Wahrscheinlichkeitsverteilungen. Es sind verschiedene Splines zur Interpolation enthalten. Die Math Kernel Library verfügt über Funktionen für neuronale Netze (z. B. Backpropagation).[7]
Weblinks
[Bearbeiten | Quelltext bearbeiten]Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Indiana University: What is the Intel Math Kernel Library, and where is it installed at IU and on XSEDE? In: Indiana University. Indiana University System, 20. August 2015, abgerufen am 25. März 2017 (englisch).
- ↑ Richard Friedman: Intel MKL and Intel TBB Working Together for Performance. In: Inside HPC. insideHPC Media, 23. März 2017, abgerufen am 25. März 2017 (englisch).
- ↑ AMD Ryzen 3900X vs Intel Xeon 2175W Python numpy - MKL vs OpenBLAS. Abgerufen am 11. Dezember 2019 (englisch).
- ↑ How To Use MKL with AMD Ryzen and Threadripper CPU's (Effectively) for Python Numpy (And Other Applications). Abgerufen am 11. Dezember 2019 (englisch).
- ↑ Daniël de Kok: Intel MKL on AMD Zen. Abgerufen am 28. Oktober 2020.
- ↑ Alexander Neumann: Intel konfektioniert Distribution für Python-Entwickler. In: heise Developer. Heise Medien GmbH & Co. KG, 21. März 2016, abgerufen am 25. März 2017.
- ↑ Intel: Intel Math Kernel Library. In: Intel. Intel Corp., abgerufen am 25. März 2017 (englisch).