Intel DPC++ Compatibility Tool 

Intel DPC++ Compatibility Tool

Qalisa nge-Intel® DPC+ + Compatibility Tool

I-Intel® DPC++ Compatibility Tool isiza ekuthuthweni kohlelo lukanjiniyela olubhalwe nge-CUDA* luye ohlelweni olubhalwe ku-Data Parallel C++ (DPC++), olusekelwe ku-C++ yesimanje futhi oluhlanganisa namazinga emboni aphathekayo afana ne-SYCL*.

  • Vakashela i-Intel® DPC++ Compatibility Tool Developer Guide kanye nereferensi ukuze uthole ulwazi olwengeziwe mayelana nethuluzi.
  • Vakashela Amanothi Okukhishwa ngezinkinga ezaziwayo kanye nolwazi lwakamuva kakhulu.

QAPHELA Ukusetshenziswa kwe-Intel® DPC++ Compatibility Tool kuzoholela kuphrojekthi engathuthwanga ngokuphelele. Umsebenzi owengeziwe, njengoba kuvezwe ukuphuma kwe-Intel® DPC++ Compatibility Tool, uyadingeka ukuze kuqedelwe ukuthutha.

Ngaphambi kokuthi Uqale

I-Intel® DPC++ Compatibility Tool ifakiwe ku-Intel® oneAPI Base Toolkit. Uma ungakayifaki i-Intel® oneAPI Base Toolkit, landela imiyalelo ekuMhlahlandlela Wokufaka.

Isihloko esithile se-CUDA files (okuqondile kuphrojekthi yakho) kungase kudingeke ukuthi kufinyeleleke ku-Intel® DPC++
Ithuluzi Lokuhambisana. I-Intel® DPC++ Compatibility Tool ibheka lezi unhlokweni we-CUDA files ezindaweni ezizenzakalelayo:

  • /usr/local/cuda/include
  • /usr/local/cuda-xy/hlanganisa, lapho i-xy ingenye yalawa manani: 8.0, 9.x, 10.x, kanye no-11.0–11.6.

Ungakwazi ukukhomba izindawo zangokwezifiso ngokuzikhomba nge- -cuda-include-path= inketho kumugqa womyalo we-Intel® DPC++ Compatibility Tool.

QAPHELA I-CUDA ihlanganisa indlela akufanele ifane, noma indlela yengane, yohla lwemibhalo lapho ikhodi yomthombo okudingeka ithuthwe itholakala khona.

Okwamanje, i-Intel® DPC++ Compatibility Tool isekela ukuthuthwa kwezinhlelo ezisetshenziswa ngezinguqulo ze-CUDA 8.0, 9.x, 10.x, kanye ne-11.0–11.6. Uhlu lwezilimi ezisekelwayo nezinguqulo zinganwetshwa ngokuzayo.

Ukuze usethe imvelo ye-Intel® DPC++ Compatibility Tool, sebenzisa okulandelayo:

  • Ku-Linux (sudo): umthombo /opt/intel/oneapi/setvars.sh
  • Ku-Linux (umsebenzisi): umthombo ~/intel/oneapi/setvars.sh
  • Ku-Windows :Drive:\ Program Files (x86)\Intel\oneAPI\setvars.bat

I-syntax yesicelo evamile evela kugobolondo lesistimu yokusebenza ithi:

dpct [izinketho] [ … ]

QAPHELA I-c2s iyigama lokusebenzisa umyalo we-dpct futhi ingasetshenziswa endaweni yayo.

Ulwazi Lokusetshenziswa Okwakhelwe Ngaphakathi 

Ukuze ubone uhlu lwezinketho eziqondile ze-Intel® DPC++ Compatibility Tool–, sebenzisa –help:

dpct -siza

Ukuze ubone uhlu lwezinketho zomhlahleli wolimi (Clang*), dlula -help njengenketho ye-Clang:

dpct - -siza
Izexwayiso ezikhishiwe

I-Intel® DPC++ Compatibility Tool ikhomba izindawo kukhodi ezingase zidinge ukuthi uzinake ngesikhathi sokuthutha files ukuze wenze ikhodi i-SYCL ihambisane noma ilungise.
Amazwana afakwa emthonjeni okhiqiziwe files futhi iboniswe njengezixwayiso kokuphumayo. Okwesiboneloample:

/indlela/iya/file.hpp:26:1: isixwayiso: DPCT1003:0: I-API ethuthiwe ayibuyiseli ikhodi yephutha. (*,0) ifakiwe. Ungase udinge ukubhala kabusha le khodi. // umugqa wekhodi yomthombo isixwayiso esakhiqizwe ^

Ukuze uthole imininingwane eyengeziwe ngokuthi sisho ukuthini isexwayiso esithile, bheka ku Inkomba yokuxilonga.

Ukuze uthole imininingwane eyengeziwe ngokuthi sisho ukuthini isexwayiso esithile, bheka i-Diagnostic Reference.

Thutha Iphrojekthi Elula Yokuhlola

I-Intel® DPC++ Compatibility Tool iza nama-s ambalwaample amaphrojekthi ukuze ukwazi ukuhlola ithuluzi futhi uzijwayeze ukuthi lisebenza kanjani:

Sample Project Incazelo
 IVector Engeza i-DPCT
  • vector_add.cu
IVector Yengeza i-DPCT sampI-le ikhombisa ukuthi luthutha kanjani uhlelo olulula lusuka ku-CUDA luye ku-SYCL. I-Vector Add inikeza indlela elula yokuqinisekisa ukuthi indawo yakho yokuthuthuka ihlelwe ngendlela efanele ukuze usebenzise Ithuluzi Le-Intel® DPC++ Compatibility Tool.
Izinketho Zefolda DPCT
  • main.cu
  • ibha/util.cu
  • ibha/util.h
Izinketho Zefolda DPCT sampi-le ikhombisa ukuthi ungathutha kanjani amaphrojekthi ayinkimbinkimbi futhi usebenzise izinketho.
Rodinia NW DPCT
  • inaliti.cu
  • inaliti.h
  • inaliti_kernel.cu
I-Rodinia NW DPCT sample ibonisa indlela yokuthutha iphrojekthi ye-Make/CMake isuka ku-CUDA iye ku-SYCL usebenzisa Ithuluzi Le-Intel® DPC++ Compatibility Tool.

Review the FUNDA file kuhlinzekwe ngesigatshana ngasinyeample ngolwazi oluthe xaxa mayelana nenjongo kanye nokusetshenziswa kwe-sample phrojekthi.

Ukuze ufinyelele i-sampLes

  • sebenzisa insiza ye-oneapi-cli ukuze ukhethe njengeample kusukela esigabeni se-Intel® DPC++ Compatibility Tool, noma
  • landa i-sampkancane kusuka I-GitHub*.

Ukuze uthole ukwaziswa okwengeziwe mayelana nendlela yokulanda nokufinyelela ku-sampLes, vakashela i-Intel® oneAPI Base Toolkit Qalisa Imihlahlandlela:

Zama i-Sample Project 

Landela lezi zinyathelo ukuze uthuthe iVector Add DPCT sample phrojekthi isebenzisa i-Intel® DPC++ Compatibility Tool:

  1. Landa i-vector_add.cu sample.
  2. Qalisa i-Intel® DPC++ Compatibility Tool kusuka ku-sample root directory:
    dpct –in-root=. src/vector_add.cu

     

    I-vector_add.dp.cpp file kufanele ivele kuhla lwemibhalo lwe-dpct_output. I file manje isiyi-SYCLsource file.

  3. Zulazulela emthonjeni omusha we-SYCL file:
cd dpct_output

Qinisekisa ikhodi yomthombo ekhiqiziwe futhi ulungise noma iyiphi ikhodi i-Intel® DPC++ Compatibility Tool engakwazanga ukuyithutha. (Ikhodi esetshenziswe kulesi sibampilula, ngakho-ke izinguquko ezenziwa ngesandla zingase zingadingeki). Ukuze uthole imiyalelo enembe kakhulu nenemininingwane yokubhekana nezixwayiso ezikhishwe ku-Intel® DPC++ Compatibility Tool, bheka isigaba esithi Ukukhuluma Ngezixwayiso Kwikhodi Ethuthiwe FUNDA files.

QAPHELA Ukuhlanganisa abafudukayo sample, engeza -I/faka kumyalo wakho wokuhlanganisa.

Ukuze uthole okwengeziwe sample imiyalelo, bona Thutha Iphrojekthi ingxenye ye-Intel® DPC++ Compatibility Tool Developer Guide and Reference.

Thola Okuningi

Okuqukethwe Incazelo
I-Intel® DPC++ Compatibility

I-Tool Developer Guide kanye

Ireferensi

Imininingwane ngaphezuluview yezici ze-Intel® DPC++ Compatibility Tool, ukuhamba komsebenzi, nokusetshenziswa.
Efunwa kakhulu Webngaphakathi:

Ukuthutha I-CUDA Yakho Ekhona

Ikhodi ku-DPC++ Ikhodi

Uyithutha kanjani ikhodi ye-CUDA iye ku-Data Parallel C++ (DPC++) usebenzisa i-Intel® DPC++ Compatibility Tool, injini yokuthutha yesikhathi esisodwa eshutheka kokubili izinhlamvu nezingcingo ze-API.
Imihlahlandlela yokufaka ye-Intel®

OneAPI Toolkits

Imiyalo enemininingwane yokuthi ungawathola kanjani futhi uwafake kanjani amaphakheji e-Intel® oneAPI usebenzisa izindlela ezihlukene zesifaki nabaphathi bephakheji.
Inguqulo yokucaciswa kwe-SYCL

1.2.1 Ifayela le-PDF

I-SYCL Specification PDF. Ichaza ukuthi i-SYCL ihlanganisa kanjani amadivayisi we-OpenCL ne-C++ yesimanje.
Ukucaciswa kwe-SYCL 2020 I-SYCL 2020 Specification PDF.
Khronos* I-SYCL iphelileview Kuphelileview ye-SYCL ehlinzekwa yi-Khronos Group.
Ukuhlanganisa i-CUDA nge-clang Incazelo yokusekelwa kwe-CUDA ku-clang.
Izandiso ze-Intel LLVM SYCL Izandiso ezihlongozwayo ekucacisweni kwe-SYCL.
Izendlalelo ze-Yocto* Project Engeza ingxenye eyodwa ye-API ekwakhiweni kwephrojekthi ye-Yocto usebenzisa izendlalelo ze-meta-intel.

Ilogo ye-intel

Amadokhumenti / Izinsiza

Intel DPC++ Compatibility Tool [pdf] Umhlahlandlela Womsebenzisi
Ithuluzi Lokuhambisana Kwe-DPC, Ithuluzi Lokuhambisana, Ithuluzi

Izithenjwa

Shiya amazwana

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