Intel logotips

intel oneAPI matemātikas kodola bibliotēka

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

Sāciet darbu ar Intel® oneAPI Math Kernel Library

Intel® oneAPI Math Kernel Library (oneMKL) palīdz sasniegt maksimālu veiktspēju, izmantojot matemātikas skaitļošanas bibliotēku, kurā ir ļoti optimizētas, plaši paralēlas CPU un GPU rutīnas. Bibliotēkai ir C un Fortran saskarnes lielākajai daļai CPU rutīnu un DPC++ saskarnes dažām rutīnām gan CPU, gan GPU. Jūs varat atrast visaptverošu atbalstu vairākām matemātikas operācijām dažādās saskarnēs, tostarp:

C un Fortran CPU

  • Lineārā algebra
  • Ātrās Furjē transformācijas (FFT)
  • Vektoru matemātika
  • Tiešie un iteratīvie retie risinātāji
  • Gadījuma skaitļu ģeneratori

DPC++ CPU un GPU (sīkāku informāciju skatiet Intel® oneAPI Math Kernel Library — Data Parallel C++ izstrādātāja atsaucē).

  • Lineārā algebra
    • BLAS
    • Atlasīta Sparse BLAS funkcionalitāte
    • Atlasīta LAPACK funkcionalitāte
  • Ātrās Furjē transformācijas (FFT)
    • 1D, 2D un 3D
  • Gadījuma skaitļu ģeneratori
    • Izvēlētā funkcionalitāte
  • Atlasītā Vector Math funkcionalitāte

Pirms sākat
Apmeklējiet lapu Piezīmes par laidienu, lai uzzinātu zināmās problēmas un jaunāko informāciju.
Apmeklējiet Intel® oneAPI Math Kernel Library System Requirements lapu, lai uzzinātu sistēmas prasības.
Apmeklējiet sadaļu Darba sākšana ar Intel® oneAPI DPC++/C++ kompilatoru DPC++ kompilatora prasībām.

1. darbība. Instalējiet Intel® oneAPI matemātikas kodola bibliotēku
Lejupielādējiet Intel® oneAPI Math Kernel Library no Intel® oneAPI bāzes rīkkopas.
Par Python izplatīšanu skatiet sadaļu Intel® Distribution instalēšana Python* un Intel® Performance bibliotēkām ar pip un PyPI.
Python izplatīšanai ņemiet vērā šādu ierobežojumu:
OneMKL izstrādes pakotne (mkl-devel) PIP izplatīšanai operētājsistēmās Linux* un macOS* nenodrošina dinamisku bibliotēku simbolu saites (plašāku informāciju skatiet PIP GitHub izdevumā #5919).
Dinamiskās vai vienas dinamiskās bibliotēkas saistīšanas gadījumā ar oneMKL izstrādes pakotni (plašāku informāciju skatiet oneMKL Link Line Advisor ), jums ir jāmaina saites rinda ar oneMKL bibliotēku pilniem nosaukumiem un versijām.
Informāciju par kompilēšanu un saistīšanu ar pkg-config rīku skatiet Intel® oneAPI Math Kernel Library un pkg-config rīkā.
oneMKL saites līnija example ar oneAPI Base Toolkit, izmantojot simboliskās saites:

  • Linux:
    icc app.obj -L${MKLROOT}/lib/intel64 -lmkl_intel_lp64-lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl
  • MacOS:
    icc app.obj -L${MKLROOT}/lib -Wl,-rpath,${MKLROOT}/lib-lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread
    -lm -ldl
    OneMKL saites līnija, piemample ar PIP izstrādes pakotni, izmantojot bibliotēku pilnus nosaukumus un versijas: Linux:
    icc app.obj ${MKLROOT}/lib/intel64/libmkl_intel_lp64.so.1 ${MKLROOT}/lib/intel64/libmkl_intel_thread.so.1 ${MKLROOT}/lib/intel64/libmkl_core.so.1 -lpthreliomp5 -lm -ldl
  • 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

2. darbība: atlasiet funkciju vai rutīnu
No oneMKL atlasiet funkciju vai rutīnu, kas vislabāk atbilst jūsu problēmai. Izmantojiet šos resursus:

Resursa saite: Saturs

oneMKL izstrādātāja rokasgrāmata operētājsistēmai Linux*
oneMKL izstrādātāja rokasgrāmata operētājsistēmai Windows*
oneMKL izstrādātāja rokasgrāmata operētājsistēmai macOS*

Izstrādātāja rokasgrāmatā ir ietverta detalizēta informācija par vairākām tēmām, tostarp:

  • Lietojumprogrammu kompilēšana un saistīšana
  • Pielāgotu DLL veidošana
  • Vītņošana
  • Atmiņas pārvaldība

oneMKL izstrādātāja atsauce — C
Valoda oneMKL izstrādātāja atsauce — Fortran valoda
oneMKL izstrādātāja atsauce — DPC++ valoda

  • Izstrādātāju uzziņa (C, Fortran un DPC++ formātos) satur detalizētus visu bibliotēkas domēnu funkciju un saskarņu aprakstus.

Intel® oneAPI matemātikas kodola bibliotēkas funkciju meklēšanas padomnieks

  • Izmantojiet LAPACK funkciju atrašanas padomnieku, lai izpētītu LAPACK rutīnas, kas ir noderīgas konkrētai problēmai. Piemēram,ample, ja norādāt darbību kā:
    • Rutīnas veids: skaitļošanas
    • Aprēķinu problēma: Ortogonālā faktorizācija
    • Matricas tips: vispārīgs
    • Darbība: veiciet QR faktorizēšanu

3. darbība: saistiet savu kodu
Izmantojiet oneMKL Link Line Advisor, lai konfigurētu saites komandu atbilstoši jūsu programmas funkcijām.
Daži ierobežojumi un papildu prasības:
Intel® oneAPI Math Kernel Library for DPC++ atbalsta tikai mkl_intel_ilp64 interfeisa bibliotēkas un secīgās vai TBB vītņu izmantošanu.

DPC++ saskarnēm ar statisku saiti operētājsistēmā Linux
icpx -fsycl -fsycl-device-code-split=per_kernel -DMKL_ILP64 ${MKLROOT}/lib/intel64/libmkl_sycl.a -Wl,–sākuma grupa ${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
Piemēram,ample, veidojot/statiski saistot main.cpp ar ilp64 saskarnēm un TBB pavedieniem:
icpx -fsycl -fsycl-device-code-split=per_kernel -DMKL_ILP64 -I${MKLROOT}/include main.cpp $
{MKLROOT}/lib/intel64/libmkl_sycl.a -Wl,–sākuma grupa ${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

DPC++ saskarnēm ar dinamisku saiti operētājsistēmā Linux
icpx -fsycl -DMKL_ILP64 -L$ {MKLROOT}/lib/intel64 -lmkl_sycl -lmkl_intel_ilp64 -lmkl_ -lmkl_core -lsycl -lOpenCL -lpthread -ldl -lm
Piemēram,ample, veidojot/dinamiski saistot main.cpp ar ilp64 saskarnēm un TBB pavedieniem:
icpx -fsycl -DMKL_ILP64 -I${MKLROOT}/include main.cpp -L${MKLROOT}/lib/intel64 -lmkl_sycl -lmkl_intel_ilp64 -lmkl_tbb_thread -lmkl_core -lsycl -lOpenCL -ltbblm

DPC++ saskarnēm ar statisku saiti operētājsistēmā 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
Piemēram,ample, veidojot/statiski saistot main.cpp ar ilp64 saskarnēm un TBB pavedieniem:
icpx -fsycl -fsycl-device-code-split=per_kernel -DMKL_ILP64 -I”%MKLROOT%\include” main.cpp”%MKLROOT%”\lib\intel64\mkl_sycl.lib mkl_intel_ilp64.lib mkl_tbb_mkllib_thcore. .lib OpenCL.lib tbb.lib

DPC++ saskarnēm ar dinamisku saiti operētājsistēmā 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
Piemēram,ample, veidojot/dinamiski saistot main.cpp ar ilp64 saskarnēm un TBB pavedieniem:
icpx -fsycl -fsycl-device-code-split=per_kernel -DMKL_ILP64 -I”%MKLROOT%\include” main.cpp “%MKLROOT%”\lib\intel64\mkl_sycl_dll.lib mkl_intel_ilp64_dll.lib mkl_bb_bb. .lib sycl.lib OpenCL.lib

C/Fortran saskarnēm ar OpenMP izkraušanas atbalstu
Izmantojiet C/Fotran Intel® oneAPI Math Kernel Library saskarnes ar OpenMP izkraušanas funkciju uz GPU.
Plašāku informāciju par šo līdzekli skatiet C OpenMP izkraušanas izstrādātāja rokasgrāmatā.
Pievienojiet šādas izmaiņas C/Fortran oneMKL kompilēšanas/saites rindās, lai iespējotu OpenMP izkraušanas funkciju GPU:

  • Papildu kompilēšanas/saites opcijas: -fiopenmp -fopenmp-targets=spir64 -mllvm -vpo-paropt-use-raw-dev-ptr -fsycl
  • Papildu viena MKL bibliotēka: viena MKL DPC++ bibliotēka

Piemēram,ample, veidojot/dinamiski saistot main.cpp operētājsistēmā Linux ar ilp64 saskarnēm un OpenMP pavedienu veidošanu:
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
Par visām pārējām atbalstītajām konfigurācijām skatiet Intel® oneAPI Math Kernel Library Link Line Advisor.

Atrast vairāk

Resurss: Apraksts

Apmācība: Intel® oneAPI matemātikas kodola bibliotēkas izmantošana matricas reizināšanai:

  • Apmācība – C valoda
  • Apmācība – Fortran valoda

Šī apmācība parāda, kā varat izmantot oneMKL, lai reizinātu matricas, izmērītu matricas reizināšanas veiktspēju un kontrolētu pavedienu veidošanu.

Intel® oneAPI matemātikas kodola bibliotēkas (oneMKL) izlaiduma piezīmes kontroles pavedienu veidošanai.
Izlaiduma piezīmēs ir ietverta informācija par jaunāko oneMKL versiju, tostarp jaunas un mainītas funkcijas. Izlaiduma piezīmēs ir ietvertas saites uz galvenajiem tiešsaistes informācijas resursiem, kas saistīti ar izlaidumu. Informāciju var atrast arī par:

  • Kas jauns izlaidumā
  • Produkta saturs
  • Tehniskā atbalsta iegūšana
  • Licences definīcijas

Intel® oneAPI matemātikas kodola bibliotēka
Intel® oneAPI Math Kernel Library (oneMKL) produkta lapa. Skatiet šo lapu, lai iegūtu atbalstu un tiešsaistes dokumentāciju.

Intel® oneAPI matemātikas kodola bibliotēkas pavārgrāmata
Intel® oneAPI Math Kernel Library satur daudzas rutīnas, kas palīdz atrisināt dažādas skaitliskas problēmas, piemēram, reizināt matricas, atrisināt vienādojumu sistēmu un veikt Furjē transformāciju.

Piezīmes par Intel® oneAPI matemātikas kodola bibliotēkas vektora statistiku
Šajā dokumentā ir iekļauts pārskatsview, VS iekļauto nejaušo skaitļu ģeneratoru lietošanas modelis un testēšanas rezultāti.

Intel® oneAPI matemātikas kodola bibliotēkas vektoru statistikas izlases skaitļu ģeneratora veiktspējas dati
Veiktspējas dati, kas iegūti, izmantojot vektoru statistikas (VS) nejaušo skaitļu ģeneratoru (RNG), tostarp CPE (pulksteņi uz elementu) mērvienību, pamata nejaušo skaitļu ģeneratorus (BRNG), ģenerētos sadalījuma ģeneratorus un ģenerēto vektoru garumu.

Intel® oneAPI matemātikas kodola bibliotēkas vektoru matemātikas veiktspējas un precizitātes dati
Vektoru matemātika (VM) aprēķina elementāras funkcijas uz vektora argumentiem. VM ietver ļoti optimizētu skaitļošanas ziņā dārgu matemātisko pamatfunkciju (jaudas, trigonometrisko, eksponenciālo, hiperbolisko un citu) ieviešanu, kas darbojas uz vektoriem.

Piezīmes par lietojumprogrammu Intel® oneAPI matemātikas kodola bibliotēkas kopsavilkuma statistikai
Kopsavilkuma statistika ir Intel® oneAPI matemātikas kodola bibliotēkas vektoru statistikas domēna apakškomponents. Kopsavilkuma statistika nodrošina sākotnējās statistiskās analīzes funkcijas un risinājumus daudzdimensiju datu kopu paralēlai apstrādei.

LAPACK Piemamples
Šis dokuments nodrošina kodu examples par oneMKL LAPACK (Linear Algebra PACKage) rutīnas.

Paziņojumi un atrunas
Veiktspējas testos izmantotā programmatūra un darba slodze, iespējams, ir optimizēta veiktspējai tikai Intel mikroprocesoros. Veiktspējas testi, piemēram, SYSmark un MobileMark, tiek mērīti, izmantojot noteiktas datorsistēmas, komponentus, programmatūru, darbības un funkcijas. Jebkuras izmaiņas kādā no šiem faktoriem var izraisīt rezultātu atšķirību. Jums vajadzētu iepazīties ar citu informāciju un veiktspējas pārbaudēm, lai palīdzētu jums pilnībā novērtēt jūsu iecerētos pirkumus, tostarp šī produkta veiktspēju, apvienojot to ar citiem produktiem. Lai iegūtu pilnīgāku informāciju, apmeklējiet www.intel.com/benchmarks.
Intel tehnoloģijām var būt nepieciešama aktivizēta aparatūras, programmatūras vai pakalpojumu aktivizēšana.
Neviens produkts vai sastāvdaļa nevar būt pilnīgi drošs.
Jūsu izmaksas un rezultāti var atšķirties.
© Intel Corporation. Intel, Intel logotips un citas Intel preču zīmes ir Intel Corporation vai tās meitasuzņēmumu preču zīmes. Citi nosaukumi un zīmoli var tikt uzskatīti par citu personu īpašumu.

Informācija par produktu un veiktspēju
Veiktspēja atšķiras atkarībā no lietojuma, konfigurācijas un citiem faktoriem. Uzziniet vairāk vietnē www.Intel.com/PerformanceIndex.
Paziņojums par pārskatīšanu #20201201
Šis dokuments nepiešķir nekādu intelektuālā īpašuma tiesību licenci (tiešu vai netiešu, apturot vai citādi).
Aprakstītajos produktos var būt dizaina defekti vai kļūdas, kas pazīstamas kā kļūdas, kuru dēļ produkts var atšķirties no publicētajām specifikācijām. Pašreizējās raksturotās kļūdas ir pieejamas pēc pieprasījuma.
Intel atsakās no visām tiešajām un netiešajām garantijām, tostarp bez ierobežojuma netiešajām garantijām par piemērotību tirdzniecībai, piemērotību noteiktam mērķim un nepārkāpšanu, kā arī no jebkādām garantijām, kas izriet no darbības gaitas, darījumu gaitas vai izmantošanas tirdzniecībā.

Dokumenti / Resursi

intel oneAPI matemātikas kodola bibliotēka [pdfLietotāja rokasgrāmata
oneAPI matemātikas kodola bibliotēka, matemātikas kodola bibliotēka, kodola bibliotēka, bibliotēka

Atsauces

Atstājiet komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti *