Intel LOGO

intel Yambitsani ndi OneAPI DPC ++/C++ Compiler

Intel-Get-Start-the-one-API-DPC ++-C++-Compiler-PRODUCT

MAU OYAMBA

Intel® oneAPI DPC++/C++ Compiler imapereka kukhathamiritsa komwe kumathandiza kuti mapulogalamu anu aziyenda mwachangu pamipangidwe ya Intel® 64 pa Windows* ndi Linux*, mothandizidwa ndi miyezo yaposachedwa ya chilankhulo C, C++, ndi SYCL. Wophatikiza uyu amapanga ma code okhathamiritsa omwe amatha kuthamanga mwachangu kwambiri potenga advantage ya kuchuluka komwe kukuchulukirachulukira kokulirapo komanso m'lifupi kaundula wa ma vector mu mapurosesa a Intel® Xeon® ndi mapurosesa ogwirizana. Intel® Compiler ikuthandizani kulimbikitsa magwiridwe antchito pogwiritsa ntchito kukhathamiritsa kwapamwamba komanso ivectorization ya Single Instruction Multiple Data (SIMD), kuphatikiza ndi Intel® Performance Libraries, komanso kugwiritsa ntchito pulogalamu yofananira ya OpenMP* 5.0/5.1.

Intel® oneAPI DPC++/C++ Compiler imapanga gwero la C++-based SYCL* files kwa ma compute accelerator osiyanasiyana.
Intel® oneAPI DPC++/C++ Compiler ndi gawo la Intel® oneAPI Toolkits.

Pezani Zambiri

Kufotokozera Kwazinthu ndi Maulalo
Zolemba Zotulutsa                                  Pitani patsamba la Zolemba Zotulutsidwa kuti mudziwe zambiri komanso zaposachedwa kwambiri.

Intel® oneAPI Programming Guide    Amapereka zambiri pa Intel® oneAPI DPC++/C++ Compiler

mtundu wamapulogalamu, kuphatikiza tsatanetsatane wokhudza kutsitsa kwa SYCL* ndi OpenMP*, kukonza mapulogalamu amitundu yosiyanasiyana yothamangitsa, ndi mawu oyambitsa malaibulale a Intel® oneAPI.

Intel® oneAPI DPC++/C++                Onani mawonekedwe a Intel® oneAPI DPC++/C++ Compiler ndikukhazikitsa ndi Compiler Developer Guide ndi          pezani zambiri mwatsatanetsatane za zosankha za compiler, mawonekedwe, ndi Buku                                        Zambiri.

OneAPI kodi Samples                      Onani khodi yaposachedwa ya oneAPI samples.

•               Intel® oneAPI Data Parallel C+      Funsani mafunso ndikupeza mayankho mu Intel® oneAPI Data Parallel C+

+ Forum                                      + ndi Intel® C++ Compiler forum.

•               Intel® C++ Compiler Forum

 

Intel® oneAPI DPC++/C++                Onani maphunziro, zida zophunzitsira, ndi Intel® oneAPI ina Compiler Documentation                  Zolemba za DPC++/C++ Compiler.

SYCL Specification Version 1.2.1       Mafotokozedwe a SYCL, amafotokoza momwe SYCL imaphatikizira zida za OpenCL PDF                                                  ndi C++ yamakono.

https://www.khronos.org/sycl/         Kuthaview pa SYCL.

The GNU * C ++ Library - Kugwiritsa         Zolemba za GNU* C++ Library zogwiritsa ntchito ABI apawiri. ABI awiri

Zigawo za Yocto* Project                  Onjezani zida za OneAPI pakupanga projekiti ya Yocto pogwiritsa ntchito meta-intel

zigawo.

Zidziwitso ndi Zodzikanira
Maukadaulo a Intel angafunike maofesi othandizira, mapulogalamu kapena ntchito yothandizira.

  • Palibe mankhwala kapena chigawo chimodzi chomwe chingakhale chotetezeka mwamtheradi.
  • Mtengo wanu ndi zotsatira zitha kusiyanasiyana.

Chithunzi © Intel Corporation Intel, logo ya Intel, ndi zizindikiro zina za Intel ndi zizindikiro za Intel Corporation kapena mabungwe ake. Mayina ena ndi mtundu zitha kunenedwa kuti ndi za ena.

Palibe chilolezo (chofotokoza kapena kutanthauza, mwa estoppel kapena mwanjira ina) yaufulu uliwonse waukadaulo womwe waperekedwa ndi chikalatachi.
Zogulitsa zomwe zafotokozedwa zitha kukhala ndi zolakwika zamapangidwe kapena zolakwika zomwe zimadziwika kuti errata zomwe zingapangitse kuti chinthucho chichoke pa zomwe zasindikizidwa. Zolakwika zamakono zilipo popempha.

Intel imakana zitsimikizo zonse zodziwika bwino, kuphatikiza popanda malire, zitsimikizo zogulitsira, kulimba pazifukwa zinazake, komanso kusaphwanya malamulo, komanso chitsimikizo chilichonse chobwera chifukwa chakuchita, kachitidwe, kapena kugwiritsa ntchito malonda.

Yambani pa Linux

Musanayambe

Khazikitsani Zosintha Zachilengedwe
Musanagwiritse ntchito compiler, muyenera choyamba kukhazikitsa zosintha za chilengedwe pofufuza zolemba za chilengedwe pogwiritsa ntchito zoyambira. Izi zimayambira zida zonse mu sitepe imodzi.

  1. Tsimikizirani chikwatu chanu choyika, :
    • a. Ngati compiler yanu idayikidwa pamalo osakhazikika ndi wogwiritsa ntchito mizu kapena sudo wogwiritsa ntchito, wopangayo adzayikidwa pansi/opt/intel/oneapi. Pamenepa, ndi /opt/intel/oneapi.
    • b. Kwa ogwiritsa ntchito omwe alibe mizu, chikwatu chanu chakunyumba pansi pa Intel/oneapi chimagwiritsidwa ntchito. Pamenepa,
      adzakhala $HOME/intel/oneapi.
    • c. Kwa ogwiritsa ntchito magulu kapena mabizinesi, gulu lanu loyang'anira litha kukhala kuti layika ma compilers pamanetiweki omwe amagawana nawo file dongosolo. Fufuzani ndi ogwira ntchito a m'dera lanu kuti mudziwe komwe mungayikitsire
      ( ).
  2. Tsitsani zolemba zokhazikitsa chilengedwe pa chipolopolo chanu:
    • a. bash: source /setvars.sh intel64
    • b. csh/tcsh: gwero /setvars.csh intel64

Ikani Madalaivala a GPU kapena Plug-ins (Mwasankha)
Mutha kupanga mapulogalamu a OneAPI pogwiritsa ntchito C++ ndi SYCL* zomwe ziziyenda pa Intel, AMD*, kapena NVIDIA* GPUs. Kuti mupange ndikuyendetsa mapulogalamu a ma GPU enieni muyenera kukhazikitsa madalaivala ogwirizana kapena mapulagini:

  • Kuti mugwiritse ntchito Intel GPU, yikani madalaivala aposachedwa a Intel GPU.
  • Kuti mugwiritse ntchito AMD GPU, ikani pulogalamu yowonjezera ya AMD GPU ya OneAPI.
  • Kuti mugwiritse ntchito NVIDIA GPU, ikani pulogalamu yowonjezera ya NVIDIA GPUs oneAPI.

Njira 1: Gwiritsani ntchito Command Line
Intel® oneAPI DPC++/C++ Compiler imapereka madalaivala angapo:

intel-Yambani-ndi-imodzi-API-DPC ++-C++-Compiler-FIG-1intel-Yambani-ndi-imodzi-API-DPC ++-C++-Compiler-FIG-2

Pemphani wolembayo pogwiritsa ntchito mawu awa:
{compiler driver} [chosankha] file1 [file2…]

Za exampLe:
icpx moni-world.cpp

Pakuphatikiza kwa SYCL, gwiritsani ntchito -fsycl kusankha ndi C++ driver:
icpx -fsycl moni-world.cpp

ZINDIKIRANI: Mukamagwiritsa ntchito -fsycl, -fsycl-targets=spir64 imaganiziridwa pokhapokha ngati -fsycl-targets imayikidwa momveka bwino mu lamulo.
Ngati mukuyang'ana NVIDIA kapena AMD GPU, tchulani pulogalamu yowonjezera ya GPU yoyambira kuti mupeze malangizo atsatanetsatane:

  • oneAPI ya NVIDIA GPUs Yambitsani Chitsogozo
  • oneAPI ya AMD GPUs Yambitsani Chitsogozo

Njira 2: Gwiritsani ntchito Eclipse* CDT
Tsatirani izi kuti mupemphe wophatikiza kuchokera mkati mwa Eclipse* CDT.

Ikani pulogalamu yowonjezera ya Intel® Compiler Eclipse CDT.

  1. Yambani Eclipse
  2. Sankhani Thandizo> Ikani Mapulogalamu Atsopano
  3. Sankhani Add kuti mutsegule Add Site dialog
  4. Sankhani Archive, sakatulani ku chikwatu /wopanga/ /linux/ide_support, sankhani .zip file zomwe zimayamba ndi com.intel.dpcpp.compiler, kenako sankhani Chabwino
  5. Sankhani zomwe mwasankha kuyambira ndi Intel, sankhani Kenako, kenako tsatirani malangizo oyika
  6. Mukafunsidwa ngati mukufuna kuyambitsanso Eclipse*, sankhani Inde

Pangani pulojekiti yatsopano kapena tsegulani pulojekiti yomwe ilipo kale.

  1. Tsegulani Project yomwe ilipo kapena Pangani Ntchito Yatsopano pa Eclipse
  2. Dinani kumanja pa Project> Properties> C/C++ Build> Tool chain Editor
  3. Sankhani Intel DPC++/C++ Compiler kuchokera pagawo lakumanja

Khazikitsani masinthidwe omanga.

  1. Tsegulani Project yomwe ilipo pa Eclipse
  2. Dinani kumanja pa Project> Properties> C/C++ Build> Settings
  3. Pangani kapena konza zochunira zomanga pagawo loyenera

Pangani Pulogalamu Kuchokera ku Line Line
Gwiritsani ntchito njira zotsatirazi kuyesa kukhazikitsa kwanu kophatikiza ndi kupanga pulogalamu.intel-Yambani-ndi-imodzi-API-DPC ++-C++-Compiler-FIG-3

  1. Gwiritsani ntchito text editor kuti mupange a file wotchedwa hello-world.cpp ndi izi:
  2. Lembani hello-world.cpp:
    icpx moni-world.cpp -o moni-dziko
    Chosankha cha -o chimafotokoza za file dzina la zomwe zatulutsidwa.
  3. Tsopano muli ndi zomwe zikuyenera kuchitika zomwe zimatchedwa hello-world zomwe zitha kuyendetsedwa ndikuyankha mwachangu:intel-Yambani-ndi-imodzi-API-DPC ++-C++-Compiler-FIG-4

Zomwe zimatuluka
Mutha kuwongolera ndikuwongolera kuphatikiza ndi zosankha za compiler. Za example, mutha kupanga chinthucho file ndikutulutsa binary yomaliza munjira ziwiri:

  1. Lembani hello-world.cpp:intel-Yambani-ndi-imodzi-API-DPC ++-C++-Compiler-FIG-5Njira ya -c imalepheretsa kulumikizana pagawo ili.
  2. Gwiritsani ntchito icpx compiler kuti mulumikizane ndi nambala yachinthu chotsatira ndikutulutsa zomwe zingatheke:intel-Yambani-ndi-imodzi-API-DPC ++-C++-Compiler-FIG-6
    Njira ya -o imatanthawuza zomwe zimapangidwa file dzina. Onani ku Compiler Options kuti mumve zambiri pazomwe zilipo.

Yambani pa Windows

Musanayambe

Khazikitsani Zosintha Zachilengedwe
Wopangayo amaphatikiza mitundu yotsatirayi ya Microsoft Visual Studio*:

  • Zithunzi za Studio 2022
  • Zithunzi za Studio 2019
  • Zithunzi za Studio 2017

ZINDIKIRANI Thandizo la Microsoft Visual Studio 2017 latsitsidwa ngati Intel® oneAPI 2022.1 kutulutsidwa ndipo lidzachotsedwa kumasulidwa mtsogolo.

Kuti mugwire ntchito zonse mkati mwa Visual Studio, kuphatikiza kukonza zolakwika ndi chitukuko, Visual Studio Community Edition kapena apamwamba amafunikira. Visual Studio Express Edition imalola kupanga mzere wamalamulo okha. Pamitundu yonse, chithandizo cha Microsoft C ++ chiyenera kusankhidwa ngati gawo la Visual Studio install. Kwa Visual Studio 2017 ndi pambuyo pake, muyenera kugwiritsa ntchito makonda kuti musankhe izi.
Simufunikanso kukhazikitsa zosintha zapa Windows, popeza zenera la mzere wa compiler limakupangirani izi zokha. Ngati mukufuna kukhazikitsa zosintha za chilengedwe, yendetsani chilengedwe monga momwe tafotokozera muzolemba za Get Started.
Chikwatu chosasinthika ( ) ndi C:\Program Files (x86)\Intel\oneAPI.

Ikani Madalaivala a GPU (Mwasankha)
Kuti mupange ndikuyendetsa mapulogalamu a Intel GPUs muyenera kukhazikitsa madalaivala aposachedwa a Intel GPU.

Njira 1: Gwiritsani ntchito Command Line mu Microsoft Visual Studio

Intel® oneAPI DPC++/C++ Compiler imapereka madalaivala angapo:intel-Yambani-ndi-imodzi-API-DPC ++-C++-Compiler-FIG-7 intel-Yambani-ndi-imodzi-API-DPC ++-C++-Compiler-FIG-8

Pemphani wolembayo pogwiritsa ntchito mawu awa:intel-Yambani-ndi-imodzi-API-DPC ++-C++-Compiler-FIG-9

Kuti mupemphe wolembayo pogwiritsa ntchito mzere wolamula kuchokera mkati mwa Microsoft Visual Studio, tsegulani lamulo lolamula ndikuyika lamulo lanu lophatikiza. Za exampLe:intel-Yambani-ndi-imodzi-API-DPC ++-C++-Compiler-FIG-10

Pakuphatikiza kwa SYCL, gwiritsani ntchito -fsycl kusankha ndi C++ driver:intel-Yambani-ndi-imodzi-API-DPC ++-C++-Compiler-FIG-11

ZINDIKIRANI: Mukamagwiritsa ntchito -fsycl, -fsycl-targets=spir64 imaganiziridwa pokhapokha ngati -fsycl-targets imayikidwa momveka bwino mu lamulo.

Njira 2: Gwiritsani ntchito Microsoft Visual Studio
Project Support ya Intel® DPC++/C++ Compiler mu Microsoft Visual Studio
Mapulojekiti atsopano a Microsoft Visual Studio a DPC++ amasinthidwa okha kuti agwiritse ntchito Intel® oneAPI DPC++/C++ Compiler.
Mapulojekiti atsopano a Microsoft Visual C++* (MSVC) ayenera kukonzedwa pamanja kuti agwiritse ntchito Intel® oneAPI DPC++/C++ Compiler.

ZINDIKIRANI: Mitundu ya pulojekiti ya CLR C++ yochokera ku NET simathandizidwa ndi Intel® oneAPI DPC++/C++ Compiler. Mitundu yeniyeni ya projekiti idzasiyana kutengera mtundu wanu wa Visual Studio, mwachitsanzoample: CLR Class Library, CLR Console App, kapena CLR Empty Project.

Gwiritsani ntchito Intel® DPC++/C++ Compiler mu Microsoft Visual Studio
Masitepe enieni amatha kusiyanasiyana kutengera mtundu wa Microsoft Visual Studio womwe ukugwiritsidwa ntchito.

  1. Pangani pulojekiti ya Microsoft Visual C++ (MSVC) kapena tsegulani pulojekiti yomwe ilipo.
  2. Mu Solution Explorer, sankhani projekiti yomanga ndi Intel® oneAPI DPC++/C++ Compiler.
  3. Tsegulani Project> Properties .
  4. Pagawo lakumanzere, onjezerani gulu la Configuration Properties ndikusankha General Properties tsamba.
  5. Pagawo lakumanja sinthani Platform Toolset kukhala compiler yomwe mukufuna kugwiritsa ntchito:
    • Pa C++ yokhala ndi SYCL, sankhani Intel® oneAPI DPC++ Compiler.
    • Kwa C/C++, pali zida ziwiri.
      Sankhani Intel C++ Compiler (Example 2021) kuti mupemphe icx.
      Sankhani Intel C++ Compiler (Example 19.2) kuti mupemphe icl.
      Kapenanso, mutha kufotokozera mtundu wa compiler ngati chida cha nsanja zonse zothandizidwa ndi masinthidwe a projekiti yosankhidwa posankha Project> Intel Compiler> Gwiritsani Intel oneAPI DPC++/C++ Compiler.
  6. Manganinso, pogwiritsa ntchito Mangani> Ntchito Yokha> Manganinso pulojekiti imodzi kapena Pangani> Manganinso Yankho kuti mupeze yankho.

Sankhani Compiler Version
Ngati muli ndi mitundu ingapo ya Intel® oneAPI DPC++/C++ Compiler yoyika, mutha kusankha mtundu womwe mukufuna kuchokera pabokosi la Compiler Selection:

  1. Sankhani pulojekiti, kenako pitani ku Zida> Zosankha> Intel Compilers and Library> > Compilers, kumene Makhalidwe ndi C++ kapena DPC++.
  2. Gwiritsani ntchito menyu yotsitsa ya Selected Compiler kuti musankhe mtundu woyenera wa compiler.
  3. Sankhani Chabwino.

Sinthani Kubwerera ku Microsoft Visual Studio C++ Compiler
Ngati polojekiti yanu ikugwiritsa ntchito Intel® oneAPI DPC++/C++ Compiler, mutha kusankha kubwerera ku Microsoft Visual C++ compiler:

  1. Sankhani polojekiti yanu mu Microsoft Visual Studio.
  2. Dinani kumanja ndikusankha Intel Compiler> Gwiritsani Ntchito Visual C++ kuchokera pazosankha.

Izi zikusintha yankho file kuti mugwiritse ntchito compiler ya Microsoft Visual Studio C++. Masinthidwe onse a mapulojekiti okhudzidwa amayeretsedwa pokhapokha mutasankha Osayeretsa mapulojekiti. Ngati mwasankha kusayeretsa mapulojekiti, muyenera kumanganso mapulojekiti omwe asinthidwa kuti muwonetsetse kuti gwero lonse files amapangidwa ndi compiler yatsopano.

Pangani Pulogalamu Kuchokera ku Line Line
Gwiritsani ntchito njira zotsatirazi kuyesa kukhazikitsa kwanu kophatikiza ndi kupanga pulogalamu.

  1. Gwiritsani ntchito text editor kuti mupange a file wotchedwa hello-world.cpp ndi izi:
    #kuphatikizapo int main() std::cout << “Moni, dziko!\n”; kubwerera 0;
  2. Lembani hello-world.cpp:
    icx moni-world.cpp
  3. Tsopano muli ndi chotheka chotchedwa hello-world.exe chomwe chitha kuyendetsedwa ndipo chidzapereka ndemanga posachedwa:
    moni-world.exe

Zomwe zimatuluka:
Moni Dziko Lapansi!

Mutha kuwongolera ndikuwongolera kuphatikiza ndi zosankha za compiler. Za example, mutha kupanga chinthucho file ndikutulutsa binary yomaliza munjira ziwiri:

  1.  Lembani hello-world.cpp:
    icx moni-world.cpp /c /Fohello-world.obj
    Njira ya / c imalepheretsa kugwirizanitsa pa sitepe iyi ndipo / Fo imatchula dzina la chinthucho file.
  2. Gwiritsani ntchito icx compiler kuti mulumikize nambala yachinthu chotsatira ndikutulutsa zomwe zingatheke:
    icx hello-world.obj /Fehello-world.exe
  3. Njira ya / Fe imatanthawuza zomwe zimapangidwa file dzina. Onani ku Compiler Options kuti mumve zambiri pazomwe zilipo.

Pangani ndikuchita Sample kodi

angapo kodi sampLes amaperekedwa kwa Intel® oneAPI DPC++/C++ Compiler kuti muthe kufufuza zinthu za compiler ndikudziwiratu momwe zimagwirira ntchito. Za exampLe:

intel-Yambani-ndi-imodzi-API-DPC ++-C++-Compiler-FIG-17intel-Yambani-ndi-imodzi-API-DPC ++-C++-Compiler-FIG-18

Masitepe Otsatira

  • Gwiritsani ntchito API Code S yaposachedwa kwambiriamples ndikutsata limodzi ndi Intel® oneAPI Training Resources.
  • Onani Intel® oneAPI DPC++/C++ Compiler Developer Guide ndi Reference pa Intel® Developer Zone.

Zolemba / Zothandizira

intel Yambitsani ndi OneAPI DPC ++/C++ Compiler [pdf] Buku Logwiritsa Ntchito
Yambani ndi Wopanga API DPC C, Yambani ndi, OneAPI DPC C Compiler

Maumboni

Siyani ndemanga

Imelo yanu sisindikizidwa. Minda yofunikira yalembedwa *