intel-logo

Intel oneAPI Math Kernel Library

i-intel-oneAPI-Math-Kernel-Library-product-image

Qalisa nge-Intel® oneAPI Math Kernel Library

I-Intel® oneAPI Math Kernel Library (i-oneMKL) ikusiza ukuthi ufinyelele ukusebenza okuphezulu ngomtapo wezincwadi wekhompuyutha wezibalo olungiselelwe kahle kakhulu, ohambisana kakhulu we-CPU ne-GPU. Umtapo wolwazi unokuxhumana kwe-C ne-Fortran yezindlela eziningi ze-CPU, kanye ne-DPC++ yezindlela ezithile kuzo zombili i-CPU ne-GPU. Ungathola ukwesekwa okuphelele kokusebenza kwezibalo eziningana ezindaweni ezihlukahlukene ezihlanganisa:

Ku-C ne-Fortran ku-CPU

  • I-algebra yomugqa
  • I-Fast Fourier Transforms (FFT)
  • Izibalo zeVector
  • Izixazululi ze-sparse eziqondile neziphindaphindayo
  • Amajeneretha ezinombolo ezingahleliwe

Nge-DPC++ ku-CPU ne-GPU (Bheka ku-Intel® oneAPI Math Kernel Library—Ireferensi Yonjiniyela Yedatha Ehambisanayo ne-C++ ukuze uthole imininingwane eyengeziwe.)

  • I-algebra yomugqa
    • BLAS
    • Umsebenzi okhethiwe we-Sparse BLAS
    • Umsebenzi okhethiwe we-LAPACK
  • I-Fast Fourier Transforms (FFT)
    • 1D, 2D, ne-3D
  • Amajeneretha ezinombolo ezingahleliwe
    • Ukusebenza okukhethiwe
  • Umsebenzi okhethiwe we-Vector Math

Ngaphambi kokuthi Uqale
Vakashela ikhasi lamanothi okukhishwa ukuze uthole Izinkinga ezaziwayo kanye nolwazi lwakamuva kakhulu.
Vakashela ikhasi le-Intel® oneAPI Math Kernel Library System Izidingo ngezidingo zohlelo.
Vakashela okuthi Qalisa Nge-Intel® oneAPI DPC++/C++ Compiler yezidingo ze-DPC++ Compiler.

Isinyathelo 1: Faka i-Intel® oneAPI Math Kernel Library
Landa i-Intel® oneAPI Math Kernel Library kusukela ku-Intel® oneAPI Base Toolkit.
Ngokusatshalaliswa kwe-Python, bheka Ukufaka i-Intel® Distribution ye-Python* kanye ne-Intel® Performance Libraries nge-pip ne-PyPI.
Ngokusatshalaliswa kwePython, qaphela umkhawulo olandelayo:
Iphakheji ye-oneMKL devel (mkl-devel) yokusabalalisa kwe-PIP ku-Linux* kanye ne-macOS* ayinikezi ama-symlink ashukumisayo wamalabhulali (ngolwazi olubanzi bheka ukukhishwa kwe-PIP GitHub #5919).
Esimeni selabhulali eguquguqukayo noma eyodwa exhumene nephakheji yedeveli eyodwa yeMKL (ukuthola ulwazi olwengeziwe bheka Umeluleki Wolayini Wesixhumanisi esisodwa weMKL ) kufanele ulungise ulayini wesixhumanisi onelabhulali eyodwa yeMKL amagama agcwele nezinguqulo.
Bheka ku-Intel® oneAPI Math Kernel Library kanye nethuluzi le-pkg-config ukuze uthole ulwazi mayelana nokuhlanganisa nokuxhumanisa nethuluzi le-pkg-config.
umugqa wesixhumanisi we-oneMKL example nge-oneAPI Base Toolkit ngama-symlink:

  • I-Linux:
    icc app.obj -L${MKLROOT}/lib/intel64 -lmkl_intel_lp64-lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl
  • i-macOS:
    icc app.obj -L${MKLROOT}/lib -Wl,-rpath,${MKLROOT}/lib-lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread
    -lm -ldl
    Umugqa wesixhumanisi we-oneMKL example ngephakheji ye-PIP yokuthuthukisa ngamalabhulali amagama aphelele nezinguqulo: Linux:
    icc app.obj ${MKLROOT}/lib/intel64/libmkl_intel_lp64.so.1 ${MKLROOT}/lib/intel64/libmkl_intel_thread.so.1 ${MKLROOT}/lib/intel64/libmkl_liomp1read -5read -XNUMX. -lm -ldl
  • i-macOS:
    icc app.obj -Wl,-rpath,${MKLROOT}/lib${MKLROOT}/lib/intel64/libmkl_intel_lp64.1.dylib $ {MKLROOT}/lib/intel64/libmkl_intel_thread.1.dylib
    ${MKLROOT}/lib/intel64/libmkl_core.1.dylib -liomp5 -lpthread -lm-ldl

Isinyathelo sesi-2: Khetha Umsebenzi noma Umjikelezo
Khetha umsebenzi noma isimiso ku-oneMKL esilungele kangcono inkinga yakho. Sebenzisa lezi zinsiza:

Isixhumanisi Sensiza: Okuqukethwe

Umhlahlandlela Wonjiniyela we-oneMKL we-Linux*
Umhlahlandlela Wonjiniyela we-oneMKL weWindows*
Umhlahlandlela Wonjiniyela we-oneMKL we-macOS*

Umhlahlandlela Wonjiniyela uqukethe imininingwane enemininingwane ngezihloko ezimbalwa ezihlanganisa:

  • Ukuhlanganisa nokuxhumanisa izinhlelo zokusebenza
  • Ukwakha ama-DLL angokwezifiso
  • Uchungechunge
  • Ukuphathwa Kwenkumbulo

OneMKL Developer Reference - C
Ulimi oneMKL Inkomba Yonjiniyela - Ulimi lwe-Fortran
OneMKL Developer Reference – DPC++ Language

  • Ireferensi Yonjiniyela (ngefomethi ye-C, Fortran, kanye ne-DPC++) iqukethe izincazelo ezinemininingwane yemisebenzi nezindawo zokusebenzelana kuzo zonke izizinda zelabhulali.

Intel® oneAPI Math Kernel Library Function Find Advisor

  • Sebenzisa i-LAPACK Function Find Advisor ukuze uhlole izindlela ze-LAPACK eziwusizo enkingeni ethile. Okwesiboneloample, uma ucacise umsebenzi ngokuthi:
    • Uhlobo lomjikelezo: Okokubala
    • Inkinga yekhompyutha: I-Orthogonal factorization
    • Uhlobo lwe-matrix: Okujwayelekile
    • Ukusebenza: Yenza i-QR factorization

Isinyathelo sesi-3: Xhuma Ikhodi Yakho
Sebenzisa i-oneMKL Link Line Advisor ukuze ulungiselele umyalo wesixhumanisi ngokuya nezici zohlelo lwakho.
Eminye imikhawulo kanye nezidingo ezengeziwe:
I-Intel® oneAPI Math Kernel Library ye-DPC++ isekela kuphela ukusebenzisa umtapo wolwazi we-mkl_intel_ilp64 kanye nokulandelanisa okulandelanayo noma kwe-TBB.

Okokusebenzelana kwe-DPC++ nokuxhumanisa okumile ku-Linux
icpx -fsycl -fsycl-device-code-split=per_kernel -DMKL_ILP64 ${MKLROOT}/lib/intel64/libmkl_sycl.a -Wl,–start-group ${MKLROOT}/lib/intel64/libmkl_intel_ilp64.a ${MKLROOT}/lib/intel64/
libmkl_ .a ${MKLROOT}/lib/intel64/libmkl_core.a -Wl,–end-group -lsycl -lOpenCL -lpthread -ldl -lm
Okwesiboneloample, ukwakha/ukuxhumanisa ngokwezibalo i-main.cpp enezindawo zokusebenzelana ze-ilp64 kanye nokucushwa kwe-TBB:
icpx -fsycl -fsycl-device-code-split=per_kernel -DMKL_ILP64 -I${MKLROOT}/include main.cpp $
{MKLROOT}/lib/intel64/libmkl_sycl.a -Wl,–start-group ${MKLROOT}/lib/intel64/
libmkl_intel_ilp64.a ${MKLROOT}/lib/intel64/libmkl_tbb_thread.a ${MKLROOT}/lib/intel64/
libmkl_core.a -Wl,–end-group -L${TBBROOT}/lib/intel64/gcc4.8 -ltbb -lsycl -lOpenCL -lpthread -lm -ldl

Okokusebenzelana kwe-DPC++ enokuxhumana okuguquguqukayo ku-Linux
icpx -fsycl -DMKL_ILP64 -L$ {MKLROOT}/lib/intel64 -lmkl_sycl -lmkl_intel_ilp64 -lmkl_ -lmkl_core -lsycl -lOpenCL -lpthread -ldl -lm
Okwesiboneloample, ukwakha/okuxhumanisa ngokuguquguqukayo i-main.cpp enezindawo zokusebenzelana ze-ilp64 kanye nentambo ye-TBB:
icpx -fsycl -DMKL_ILP64 -I${MKLROOT}/include main.cpp -L${MKLROOT}/lib/intel64 -lmkl_sycl -lmkl_intel_ilp64 -lmkl_tbb_thread -lmkl_core -lsycl -llpthlmread -lpthlmread

Okokusebenzelana kwe-DPC++ enokuxhumana okumile ku-Windows
icpx -fsycl -fsycl-device-code-split=per_kernel -DMKL_ILP64 “%MKLROOT%”\lib\intel64\mkl_sycl.lib
mkl_intel_ilp64.lib mkl_ .lib mkl_core_lib sycl.lib OpenCL.lib
Okwesiboneloample, ukwakha/ukuxhumanisa ngokwezibalo i-main.cpp enezindawo zokusebenzelana ze-ilp64 kanye nokucushwa kwe-TBB:
icpx -fsycl -fsycl-device-code-split=per_kernel -DMKL_ILP64 -I”%MKLROOT%\include” main.cpp”%MKLROOT%”\lib\intel64\mkl_sycl.lib mkl_intel_ilp64.libl_core mkl_core. .lib OpenCL.lib tbb.lib

Okokusebenzelana kwe-DPC++ enokuxhumana okuguquguqukayo ku-Windows
icpx -fsycl -DMKL_ILP64 “%MKLROOT%”\lib\intel64\mkl_sycl_dll.lib mkl_intel_ilp64_dll.lib mkl_ _dll.lib mkl_core_dll.lib tbb.lib sycl.lib OpenCL.lib
Okwesiboneloample, ukwakha/okuxhumanisa ngokuguquguqukayo i-main.cpp enezindawo zokusebenzelana ze-ilp64 kanye nentambo ye-TBB:
icpx -fsycl -fsycl-device-code-split=per_kernel -DMKL_ILP64 -I”%MKLROOT%\include” main.cpp “%MKLROOT%”\lib\intel64\mkl_sycl_dll.lib mkl_intel_ilp64b_mlklread_dl. dll.lib tbb .lib sycl.lib OpenCL.lib

Okwe-C/Fortran Interfaces enokwesekwa kokulayishwa kwe-OpenMP
Sebenzisa izixhumanisi ze-C/Fotran Intel® oneAPI Math Kernel Library enesici sokulayisha se-OpenMP ku-GPU.
Bona i-C OpenMP Offload Developer Guide ukuze uthole imininingwane eyengeziwe ngalesi sici.
Engeza izinguquko ezilandelayo emigqeni yokuhlanganisa/yesixhumanisi ye-C/Fortran oneMKL ukuze unike amandla isici sokulayisha se-OpenMP ku-GPU:

  • Izinketho ezengeziwe zokuhlanganisa/izixhumanisi: -fiopenmp -fopenmp-targets=spir64 -mllvm -vpo-paropt-use-raw-dev-ptr -fsycl
  • Ilabhulali ye-oneMKL eyengeziwe: ilabhulali eyodwa yeMKL DPC++

Okwesiboneloample, ukwakha/ ukuxhumanisa ngokunamandla i-main.cpp ku-Linux enezindawo zokusebenzelana ze-ilp64 kanye nentambo ye-OpenMP:
icx -fiopenmp -fopenmp-targets=spir64 -mllvm -vpo-paropt-use-raw-dev-ptr -fsycl -DMKL_ILP64 -m64 -I$(MKLROOT)/include main.cpp L${MKLROOT}/lib/intel64 - lmkl_sycl -lmkl_intel_ilp64 -lmkl_intel_thread -lmkl_core -liomp5 -lsycl -lOpenCL -lstdc++ -lpthread -lm -ldl
Ngazo zonke ezinye izilungiselelo ezisekelwayo, bona i-Intel® oneAPI Math Kernel Library Link Line Advisor.

Thola Okuningi

Insiza: Incazelo

Okokufundisa: Ukusebenzisa i-Intel® oneAPI Math Kernel Library yokuphindaphinda kwe-Matrix:

  • Okokufundisa – C Ulimi
  • Okokufundisa - Ulimi lweFortran

Lesi sifundo sibonisa ukuthi ungasebenzisa kanjani i-oneMKL ukuze uphindaphinde omatikuletsheni, ulinganise ukusebenza kokuphindaphinda kwe-matrix, kanye nokulawula ukuxhuma.

I-Intel® oneAPI ye-Math Kernel Library (i-oneMKL) ilawula ukucushwa kwamanothi okukhishwa.
Amanothi okukhishwa aqukethe ulwazi oluqondene nokukhishwa kwakamuva kwe-oneMKL okuhlanganisa izici ezintsha nezishintshile. Amanothi okukhishwa afaka izixhumanisi ezinsizeni zolwazi eziku-inthanethi eziyinhloko ezihlobene nokukhishwa. Ungathola nolwazi kokuthi:

  • Yini entsha ekukhishweni
  • Okuqukethwe komkhiqizo
  • Ukuthola ukwesekwa kobuchwepheshe
  • Izincazelo zelayisensi

Intel® oneAPI Math Kernel Library
Ikhasi lomkhiqizo le-Intel® oneAPI Math Kernel Library (oneMKL). Bona leli khasi ukuze uthole ukwesekwa kanye nemibhalo eku-inthanethi.

Intel® oneAPI Math Kernel Library Cookbook
I-Intel® oneAPI Math Kernel Library iqukethe izindlela eziningi zokukusiza uxazulule izinkinga zezinombolo ezihlukahlukene, njengokuphindaphinda umatric, ukuxazulula isistimu yezibalo, nokwenza uguquko lwe-Fourier.

Amanothi e-Intel® oneAPI yezibalo zeVector yeLabhulali Yezibalo
Le dokhumenti ifaka phakathiview, imodeli yokusetshenziswa nemiphumela yokuhlola yamajeneretha ezinombolo angahleliwe afakwe ku-VS.

I-Intel® oneAPI yezibalo ze-Math Kernel Vector Statistics Data Random Number Generator Performance Data
Idatha yokusebenza etholwe kusetshenziswa izibalo ze-vector (VS) i-random number generator (RNG) okuhlanganisa iyunithi yokulinganisa ye-CPE (amawashi ngento ngayinye), amajeneretha ezinombolo ezingahleliwe (BRNG), amajeneretha okusabalalisa akhiqiziwe, nobude bamavekhtha akhiqiziwe.

I-Intel® oneAPI ye-Math Kernel Library Vector Performance kanye nedatha yokunemba
I-Vector Mathematics (VM) ihlanganisa imisebenzi eyisisekelo kuma-agumenti e-vector. I-VM ihlanganisa isethi yokusetshenziswa okulungiselelwe kakhulu yemisebenzi yezibalo eyinhloko ebiza ngokwekhompuyutha (amandla, i-trigonometric, i-exponential, i-hyperbolic, nokunye) esebenza kuma-vector.

Amanothi Ohlelo Lwezibalo ze-Intel® oneAPI Math Kernel Library Summary
Izibalo Ezifingqiwe ziyingxenye engaphansi yesizinda se-Vector Statistics se-Intel® oneAPI Math Kernel Library. Izibalo Ezifingqiwe zikunikeza imisebenzi yokuhlaziya izibalo zokuqala, futhi zinikeza izixazululo zokucubungula okufanayo kwamadathasethi anezinhlangothi eziningi.

I-LAPACK ExampLes
Lo mbhalo uhlinzeka ngekhodi exampokukodwa kwe-MKL LAPACK (I-Linear Algebra PACKage) yezinqubo.

Izaziso Nemishwana Yokuzikhipha Emthwalweni
Isofthiwe nemithwalo yomsebenzi esetshenziswa ekuhlolweni kokusebenza kungenzeka ithuthukiselwe ukusebenza kuma-Intel microprocessors kuphela. Ukuhlolwa kokusebenza, okufana ne-SYSmark ne-MobileMark, kukalwa kusetshenziswa amasistimu athile ekhompiyutha, izingxenye, isofthiwe, ukusebenza kanye nemisebenzi. Noma yiluphi ushintsho kunoma iyiphi yalezo zici lungabangela imiphumela ihluke. Kufanele uthintane nolunye ulwazi nokuhlolwa kokusebenza ukuze kukusize ekuhlaziyeni ngokugcwele ukuthenga kwakho okucatshangwayo, okuhlanganisa ukusebenza kwalowo mkhiqizo uma kuhlanganiswa neminye imikhiqizo. Ukuze uthole olunye ulwazi oluphelele vakashela www.intel.com/benchmarks.
Ubuchwepheshe be-Intel bungadinga ihadiwe enikwe amandla, isofthiwe noma isevisi isebenze.
Awukho umkhiqizo noma ingxenye engavikeleka ngokuphelele.
Izindleko zakho nemiphumela ingahluka.
© Intel Corporation. I-Intel, ilogo ye-Intel, nezinye izimpawu ze-Intel yizimpawu zokuthengisa ze-Intel Corporation noma izinkampani ezingaphansi kwayo. Amanye amagama namabhrendi angafunwa njengempahla yabanye.

Ulwazi Lomkhiqizo Nokusebenza
Ukusebenza kuyehluka ngokusetshenziswa, ukumisa nezinye izici. Funda kabanzi ku www.Intel.com/PerformanceIndex.
Ukubuyekezwa kwesaziso #20201201
Ayikho ilayisensi (eshiwo noma eshiwo, nge-estoppel noma ngenye indlela) yanoma imaphi amalungelo empahla yengqondo enikezwa yile dokhumenti.
Imikhiqizo echazwe ingase iqukathe ukonakala kwedizayini noma amaphutha aziwa ngokuthi i-errata angabangela umkhiqizo ukuthi uphambuke ekucacisweni okushicilelwe. Izinkinga zamanje ezinezimpawu ziyatholakala ngesicelo.
I-Intel iyazilahla zonke iziqinisekiso ezicacile nezicatshangelwayo, okuhlanganisa ngaphandle komkhawulo, iziqinisekiso ezishiwo zokuthengiselana, ukufaneleka kwenjongo ethile, nokungaphuli umthetho, kanye nanoma yisiphi isiqinisekiso esivela ngenxa yokusebenza, inkambo yokuthengisa, noma ukusetshenziswa kwezohwebo.

Amadokhumenti / Izinsiza

Intel oneAPI Math Kernel Library [pdf] Umhlahlandlela Womsebenzisi
OneAPI Math Kernel Library, Math Kernel Library, Kernel Library, Library

Izithenjwa

Shiya amazwana

Ikheli lakho le-imeyili ngeke lishicilelwe. Izinkambu ezidingekayo zimakiwe *