intel oneAPI matematikos branduolio biblioteka
Pradėkite naudotis „Intel® oneAPI Math Kernel Library“.
„Intel® oneAPI Math Kernel Library“ (oneMKL) padeda pasiekti maksimalų našumą naudojant matematinio skaičiavimo biblioteką, sudarytą iš labai optimizuotų, plačiai lygiagrečių CPU ir GPU veiksmų. Bibliotekoje yra C ir Fortran sąsajos, skirtos daugumai procesorių, ir DPC++ sąsajos kai kurioms CPU ir GPU procedūroms. Galite rasti visapusišką kelių matematinių operacijų palaikymą įvairiose sąsajose, įskaitant:
Skirta C ir Fortran CPU
- Tiesinė algebra
- Greitieji Furjė transformacijos (FFT)
- Vektorinė matematika
- Tiesioginiai ir kartotiniai reti sprendėjai
- Atsitiktinių skaičių generatoriai
DPC++ CPU ir GPU (daugiau informacijos žr. Intel® oneAPI Math Kernel Library – Data Parallel C++ kūrėjo nuoroda).
- Tiesinė algebra
- BLAS
- Pasirinktas Sparse BLAS funkcionalumas
- Pasirinkta LAPACK funkcija
- Greitieji Furjė transformacijos (FFT)
- 1D, 2D ir 3D
- Atsitiktinių skaičių generatoriai
- Pasirinktas funkcionalumas
- Pasirinktas Vector Math funkcionalumas
Prieš pradėdami
Apsilankykite leidimo pastabų puslapyje, kur rasite žinomų problemų ir naujausios informacijos.
Norėdami sužinoti sistemos reikalavimus, apsilankykite „Intel® oneAPI Math Kernel Library System Requirements“ puslapyje.
Norėdami sužinoti DPC++ kompiliatoriaus reikalavimus, apsilankykite „Intel® oneAPI DPC++/C++“ kompiliatoriaus darbo pradžia.
1 veiksmas: įdiekite „Intel® oneAPI Math Kernel Library“.
Atsisiųskite „Intel® oneAPI Math Kernel Library“ iš „Intel® oneAPI Base Toolkit“.
Apie Python paskirstymą žr. „Intel® Distribution for Python*“ ir „Intel® Performance Libraries“ su pip ir PyPI diegimas.
„Python“ paskirstymams atkreipkite dėmesį į šiuos apribojimus:
OneMKL kūrimo paketas (mkl-devel), skirtas PIP platinimui Linux* ir macOS*, nepateikia dinaminių bibliotekų simbolių nuorodų (daugiau informacijos žr. PIP GitHub leidime Nr. 5919).
Dinaminės arba vienos dinaminės bibliotekos susiejimo su vienuMKL kūrimo paketu atveju (daugiau informacijos žr. oneMKL Link Line Advisor ), turite modifikuoti nuorodų eilutę su oneMKL bibliotekų pavadinimais ir versijomis.
Informacijos apie kompiliavimą ir susiejimą su pkg-config įrankiu rasite „Intel® oneAPI Math Kernel Library“ ir „pkg-config“ įrankyje.
oneMKL nuorodos linija, pvzampsu „oneAPI Base Toolkit“ per simbolių nuorodas:
- 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 nuorodos linija, pvzample su PIP kūrimo paketu per bibliotekas pilnus pavadinimus ir 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 veiksmas: pasirinkite funkciją arba rutiną
Iš oneMKL pasirinkite funkciją arba tvarką, kuri geriausiai tinka jūsų problemai. Naudokite šiuos išteklius:
Šaltinio nuoroda: Turinys
oneMKL kūrėjo vadovas, skirtas Linux*
oneMKL kūrėjo vadovas, skirtas Windows*
oneMKL kūrėjo vadovas, skirtas macOS*
Kūrėjo vadove pateikiama išsami informacija keliomis temomis, įskaitant:
- Programų kompiliavimas ir susiejimas
- Individualių DLL kūrimas
- Sriegimas
- Atminties valdymas
oneMKL kūrėjo nuoroda – C
Language oneMKL kūrėjo nuoroda – Fortran kalba
oneMKL kūrėjo nuoroda – DPC++ kalba
- Kūrėjų žinyne (C, Fortran ir DPC++ formatais) pateikiami išsamūs visų bibliotekos domenų funkcijų ir sąsajų aprašymai.
Intel® oneAPI matematikos branduolio bibliotekos funkcijų paieškos patarėjas
- Naudokite LAPACK funkcijų paieškos patarėją, kad ištirtumėte LAPACK procedūras, kurios yra naudingos konkrečiai problemai spręsti. Pavyzdžiui,ample, jei nurodysite operaciją kaip:
- Rutinos tipas: skaičiuojamasis
- Skaičiavimo problema: Stačiakampis faktorizavimas
- Matricos tipas: Bendra
- Veikimas: Atlikite QR faktorizavimą
3 veiksmas: susiekite savo kodą
Naudokite „oneMKL Link Line Advisor“, kad sukonfigūruotumėte nuorodos komandą pagal savo programos funkcijas.
Kai kurie apribojimai ir papildomi reikalavimai:
„Intel® oneAPI“ matematikos branduolio biblioteka, skirta DPC++, palaiko tik mkl_intel_ilp64 sąsajos bibliotekos ir nuosekliosios arba TBB gijos naudojimą.
DPC++ sąsajoms su statiniu susiejimu Linux sistemoje
icpx -fsycl -fsycl-device-code-split=per_kernel -DMKL_ILP64 ${MKLROOT}/lib/intel64/libmkl_sycl.a -Wl,–pradžios grupė ${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
Pavyzdžiui,ample, kuriant / statiškai susiejant main.cpp su ilp64 sąsajomis ir TBB gijomis:
icpx -fsycl -fsycl-device-code-split=per_kernel -DMKL_ILP64 -I${MKLROOT}/include main.cpp $
{MKLROOT}/lib/intel64/libmkl_sycl.a -Wl,–pradžios grupė ${MKLROOT}/lib/intel64/
libmkl_intel_ilp64.a ${MKLROOT}/lib/intel64/libmkl_tbb_thread.a ${MKLROOT}/lib/intel64/
libmkl_core.a -Wl,-galutinė grupė -L${TBBROOT}/lib/intel64/gcc4.8 -ltbb -lsycl -lOpenCL -lpthread -lm -ldl
DPC++ sąsajoms su dinaminiu susiejimu Linux sistemoje
icpx -fsycl -DMKL_ILP64 -L$ {MKLROOT}/lib/intel64 -lmkl_sycl -lmkl_intel_ilp64 -lmkl_ -lmkl_core -lsycl -lOpenCL -lpthread -ldl -lm
Pavyzdžiui,ample, kuriant / dinamiškai susiejant main.cpp su ilp64 sąsajomis ir TBB gijomis:
icpx -fsycl -DMKL_ILP64 -I${MKLROOT}/įtraukti main.cpp -L${MKLROOT}/lib/intel64 -lmkl_sycl -lmkl_intel_ilp64 -lmkl_tbb_thread -lmkl_core -lsycl -lOpentllre -ltllm
DPC++ sąsajoms su statiniu susiejimu sistemoje 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
Pavyzdžiui,ample, kuriant / statiškai susiejant main.cpp su ilp64 sąsajomis ir TBB gijomis:
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++ sąsajoms su dinaminiu susiejimu sistemoje 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
Pavyzdžiui,ample, kuriant / dinamiškai susiejant main.cpp su ilp64 sąsajomis ir TBB gijomis:
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_bbcore .lib sycl.lib OpenCL.lib
Skirta C / Fortran sąsajoms su OpenMP iškrovimo palaikymu
Naudokite C/Fotran Intel® oneAPI Math Kernel Library sąsajas su OpenMP iškrovimo į GPU funkcija.
Daugiau informacijos apie šią funkciją rasite C OpenMP iškrovimo kūrėjo vadove.
Pridėkite šiuos pakeitimus prie C / Fortran oneMKL kompiliavimo / nuorodų eilučių, kad įgalintumėte GPU OpenMP iškrovimo funkciją:
- Papildomos kompiliavimo / nuorodos parinktys: -fiopenmp -fopenmp-targets=spir64 -mllvm -vpo-paropt-use-raw-dev-ptr -fsycl
- Papildoma viena MKL biblioteka: viena MKL DPC++ biblioteka
Pavyzdžiui,ample, kuriant / dinamiškai susiejant main.cpp Linux sistemoje su ilp64 sąsajomis ir OpenMP gijomis:
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
Dėl visų kitų palaikomų konfigūracijų žr. Intel® oneAPI Math Kernel Library Link Line Advisor.
Rasti daugiau
Šaltinis: aprašymas
Mokymo programa: „Intel® oneAPI Math Kernel“ bibliotekos naudojimas matricos dauginimui:
- Pamoka – C kalba
- Pamoka – Fortran kalba
Šioje pamokoje parodyta, kaip galite naudoti oneMKL matricoms dauginti, matuoti matricos daugybos našumą ir valdyti sriegimą.
„Intel® oneAPI Math Kernel Library“ (oneMKL) laidos pastabų valdymo gijų valdymas.
Išleidimo pastabose pateikiama informacija apie naujausią oneMKL leidimą, įskaitant naujas ir pakeistas funkcijas. Išleidimo pastabose yra nuorodos į pagrindinius internetinius informacijos išteklius, susijusius su leidimu. Informacijos taip pat galite rasti:
- Kas naujo leidime
- Produkto turinys
- Techninės pagalbos gavimas
- Licencijos apibrėžimai
„Intel® oneAPI“ matematikos branduolio biblioteka
„Intel® oneAPI Math Kernel Library“ (oneMKL) produkto puslapis. Šiame puslapyje rasite pagalbos ir internetinės dokumentacijos.
„Intel® oneAPI“ matematikos branduolio bibliotekos receptų knyga
„Intel® oneAPI“ matematikos branduolio bibliotekoje yra daug procedūrų, padedančių išspręsti įvairias skaitines problemas, tokias kaip matricų dauginimas, lygčių sistemos sprendimas ir Furjė transformacijos atlikimas.
Pastabos dėl Intel® oneAPI matematikos branduolio bibliotekos vektorių statistikos
Šiame dokumente yra baigtisview, atsitiktinių skaičių generatorių, įtrauktų į VS, naudojimo modelis ir testavimo rezultatai.
„Intel® oneAPI“ matematikos branduolio bibliotekos vektorinės statistikos atsitiktinių skaičių generatoriaus našumo duomenys
Veikimo duomenys, gauti naudojant vektorinės statistikos (VS) atsitiktinių skaičių generatorių (RNG), įskaitant CPE (laikrodžius vienam elementui) matavimo vienetą, pagrindinius atsitiktinių skaičių generatorius (BRNG), generuojamus skirstymo generatorius ir sugeneruotų vektorių ilgį.
„Intel® oneAPI“ matematikos branduolio bibliotekos vektorinės matematikos našumo ir tikslumo duomenys
Vektorinė matematika (VM) skaičiuoja elementarias funkcijas vektoriniais argumentais. VM apima labai optimizuotų skaičiavimo požiūriu brangių pagrindinių matematinių funkcijų (galios, trigonometrinių, eksponentinių, hiperbolinių ir kitų), veikiančių vektoriais, diegimų rinkinį.
Programos pastabos, skirtos „Intel® oneAPI Math Kernel Library Summary Statistics“.
Summary Statistics yra „Intel® oneAPI Math Kernel Library“ vektorinės statistikos domeno subkomponentas. Summary Statistics suteikia jums pradinės statistinės analizės funkcijas ir sprendimus lygiagrečiam daugiamačių duomenų rinkinių apdorojimui.
LAPACK Examples
Šiame dokumente pateikiamas kodas examples vienai MKL LAPACK (Linear Algebra PACKage) rutinoms.
Pranešimai ir atsakomybės apribojimai
Programinė įranga ir darbo krūviai, naudojami atliekant našumo testus, galėjo būti optimizuoti, kad veiktų tik „Intel“ mikroprocesoriuose. Našumo testai, tokie kaip SYSmark ir MobileMark, matuojami naudojant konkrečias kompiuterines sistemas, komponentus, programinę įrangą, operacijas ir funkcijas. Dėl bet kokių šių veiksnių pasikeitimų rezultatai gali skirtis. Turėtumėte peržiūrėti kitą informaciją ir našumo testus, kurie padės visapusiškai įvertinti planuojamus pirkinius, įskaitant to produkto veikimą, kai jis derinamas su kitais produktais. Norėdami gauti išsamesnės informacijos, apsilankykite www.intel.com/benchmarks.
„Intel“ technologijoms gali reikėti aktyvuotos aparatinės, programinės įrangos ar paslaugų.
Joks gaminys ar komponentas negali būti visiškai saugūs.
Jūsų išlaidos ir rezultatai gali skirtis.
© Intel Corporation. „Intel“, „Intel“ logotipas ir kiti „Intel“ ženklai yra „Intel Corporation“ arba jos dukterinių įmonių prekių ženklai. Kiti pavadinimai ir prekės ženklai gali būti laikomi kitų nuosavybe.
Informacija apie gaminį ir našumą
Našumas skiriasi priklausomai nuo naudojimo, konfigūracijos ir kitų veiksnių. Sužinokite daugiau adresu www.Intel.com/PerformanceIndex.
Pranešimo peržiūra Nr. 20201201
Šis dokumentas nesuteikia jokios intelektinės nuosavybės teisių licencijos (aiškios ar numanomos, užkertant kelią ar kitaip).
Aprašytuose gaminiuose gali būti dizaino defektų arba klaidų, vadinamų errata, dėl kurių gaminys gali nukrypti nuo paskelbtų specifikacijų. Esamos charakteristikos klaidos yra prieinamos pagal pageidavimą.
„Intel“ atsisako visų tiesioginių ir numanomų garantijų, įskaitant, neapsiribojant, numanomas tinkamumo parduoti, tinkamumo tam tikram tikslui ir nepažeidimo garantijas, taip pat bet kokių garantijų, kylančių dėl veiklos, prekybos eigos ar naudojimo prekyboje.
Dokumentai / Ištekliai
![]() |
intel oneAPI matematikos branduolio biblioteka [pdfVartotojo vadovas oneAPI matematikos branduolio biblioteka, matematikos branduolio biblioteka, branduolio biblioteka, biblioteka |