intel Bido na otuAPI DPC ++/C++ Compiler
Okwu mmalite
Intel® oneAPI DPC++/C++ Compiler na-enye nkwalite ndị na-enyere ngwa gị aka ịgba ọsọ ọsọ na ụlọ ọrụ Intel® 64 na Windows* na Linux*, na nkwado maka ụkpụrụ asụsụ C, C++ na SYCL kachasị ọhụrụ. Ngwakọta a na-emepụta koodu kachasị mma nke nwere ike ịgba ọsọ ọsọ ọsọ site na iji advantage nke ọnụ ọgụgụ isi na-abawanye na obosara ndebanye aha vector na Intel® Xeon® processors na ndị nrụpụta dakọtara. The Intel® Compiler ga-enyere gị aka ịkwalite arụmọrụ ngwa site na njikarịcha dị elu na ntinye akwụkwọ ntuziaka Single Multiple Data (SIMD), ntinye na ọba akwụkwọ arụmọrụ Intel®, yana site n'ịkwalite ụdị mmemme mmemme OpenMP* 5.0/5.1.
Intel® oneAPI DPC++/C++ Compiler na-achịkọta isi iyi SYCL* sitere na C++ files maka ọtụtụ ndị na-agbakọ ngwa ngwa.
Intel® oneAPI DPC++/C++ Compiler bụ akụkụ nke Intel® oneAPI Toolkits.
Chọtakwuo
Nkọwa ọdịnaya na njikọ |
Ndetu mwepụta Gaa na ibe ndetu mwepụta maka okwu ama ama yana ozi kachasị ọhụrụ.
Ntuziaka mmemme Intel® oneAPI Na-enye nkọwa na Intel® oneAPI DPC++/C++ Compiler ụdị mmemme, gụnyere nkọwa gbasara SYCL* na OpenMP* offload, mmemme maka ndị na-eme ngwa ngwa dị iche iche, na iwebata ọba akwụkwọ Intel® oneAPI. Intel® oneAPI DPC++/C++ Chọgharịa atụmatụ Intel® oneAPI DPC++/C++ na ntọlite na Ntuziaka Onye Mmepụta Compiler na nweta ozi zuru oke gbasara nhọrọ ndị nchịkọta, njirimara na Ntụaka Ọzọ. Otu API Code Samples Chọgharịa koodu s otuAPI kachasị ọhụrụamples. • Intel® oneAPI Data Parallel C+ Jụọ ajụjụ wee chọta azịza na Intel® oneAPI Data Parallel C+ + Nzukọ + na Intel® C++ Compiler forums.
Intel® oneAPI DPC++/C++ Chọgharịa nkuzi, ngwa ọzụzụ na Intel® oneAPI ndị ọzọ Akwụkwọ nchịkọta DPC++/C++ akwụkwọ nchịkọta. Ụdị nkọwapụta SYCL 1.2.1 Nkọwa SYCL, na-akọwa ka SYCL si ejikọta ngwaọrụ OpenCL PDF na C++ ọgbara ọhụrụ. https://www.khronos.org/sycl/ Nfefeview nke SYCL. GNU* C++ Library - Iji Akwụkwọ GNU* C++ maka iji ABI abụọ. Abụọ ABI |
Layers maka Yocto* Project Tinye otu ihe API na ihe nrụpụta Yocto site na iji meta-intel
n'ígwé. |
Ọkwa na Nkwusa
Teknụzụ Intel nwere ike ịchọ ngwa ngwa, ngwanrọ ma ọ bụ ịgbalite ọrụ.
- Ọ nweghị ngwaahịa ma ọ bụ akụrụngwa nwere ike nwee nchekwa kpamkpam.
- Ọnụ ego gị na nsonaazụ gị nwere ike ịdị iche.
© Ụlọ ọrụ Intel. Intel, akara Intel, na akara Intel ndị ọzọ bụ ụghalaahịa nke Intel Corporation ma ọ bụ ndị enyemaka ya. Enwere ike ịzọrọ aha na akara ndị ọzọ dị ka ihe onwunwe nke ndị ọzọ.
Enweghị ikike (gopụtara ma ọ bụ egosipụtara, site na estoppel ma ọ bụ nke ọzọ) ikike ikike ọgụgụ isi ọ bụla enyere site na akwụkwọ a.
Ngwaahịa akọwara nwere ike ịnwe ntụpọ imewe ma ọ bụ mperi mara dị ka errata nke nwere ike ime ka ngwaahịa ahụ pụọ na nkọwapụta ebipụtara. Errata mara ugbu a dị na arịrịọ.
Intel na-ewepụ akwụkwọ ikike niile egosipụtara na nke egosipụtara, gụnyere enweghị oke, akwụkwọ ikike ịzụ ahịa, ahụike maka otu ebumnuche, yana enweghị mmebi, yana akwụkwọ ikike ọ bụla sitere na arụmọrụ, usoro azụmahịa, ma ọ bụ ojiji na ahia.
Bido na Linux
Tupu Ị Malite
Tọọ mgbanwe gburugburu
Tupu ị nwee ike iji ihe nchịkọta, ị ga-ebu ụzọ tọọ mgbanwe gburugburu ebe obibi site na iji mmalite mmalite. Nke a na-ebido ngwa ọrụ niile n'otu nzọụkwụ.
- Kpebie ndekọ nwụnye gị, :
- a. Ọ bụrụ na onye ọrụ mgbọrọgwụ ma ọ bụ onye ọrụ sudo arụnyere ihe nchịkọta gị na ebe ndabara, a ga-etinye ihe nchịkọta n'okpuru/opt/intel/oneapi. N'okwu a, bụ /opt/intel/oneapi.
- b. Maka ndị ọrụ na-abụghị mgbọrọgwụ, a na-eji akwụkwọ ndekọ ụlọ gị n'okpuru intel/oneapi. N'okwu a,
ga-abụ $HOME/intel/oneapi. - c. Maka ụyọkọ ma ọ bụ ndị ọrụ ụlọ ọrụ, ndị otu nchịkwa gị nwere ike tinyela ndị nchịkọta na netwọk nkekọrịta file usoro. Lelee ndị ọrụ nchịkwa mpaghara gị maka ebe etinyere ya
( ).
- Wepụta ederede ntọala gburugburu maka shei gị:
- a. bash: isi /setvars.sh intel64
- b. csh/tcsh: isi mmalite /setvars.csh intel64
Wụnye ndị ọkwọ ụgbọala GPU ma ọ bụ nkwụnye (nhọrọ)
Ị nwere ike ịmepụta ngwa otuAPI site na iji C++ na SYCL* nke ga-agba ọsọ na Intel, AMD* ma ọ bụ NVIDIA* GPU. Iji mepụta ma mee ngwa maka GPU ndị akọwapụtara, ị ga-ebu ụzọ wụnye ọkwọ ụgbọala ma ọ bụ nkwụnye kwekọrọ:
- Iji jiri Intel GPU, wụnye ndị ọkwọ ụgbọala Intel GPU kacha ọhụrụ.
- Iji jiri AMD GPU, wụnye oneAPI maka AMD GPUs ngwa mgbakwunye.
- Iji jiri NVIDIA GPU, wụnye oneAPI maka ngwa mgbakwunye NVIDIA GPUs.
Nhọrọ 1: Jiri Command Line
Intel® oneAPI DPC++/C++ Compiler na-enye ọtụtụ ndị ọkwọ ụgbọala:
Jiri syntax a kpọọ onye nchịkọta oku:
{onye ọkwọ ụgbọala compiler} [nhọrọ] file1 [file2…]
Maka exampLe:
icpx ndewo-ụwa.cpp
Maka nchịkọta SYCL, jiri nhọrọ -fsycl na ọkwọ ụgbọala C ++:
icpx -fsycl ndewo-world.cpp
IHE: Mgbe ị na-eji -fsycl, -fsycl-targets=spir64 ka a na-eche ma ọ bụrụ na edobere -fsycl-targets n'ụzọ doro anya na iwu ahụ.
Ọ bụrụ na ị na-ezubere maka NVIDIA ma ọ bụ AMD GPU, rụtụ aka na ngwa mmalite GPU ngwa mgbakwunye kwekọrọ maka ntuziaka nchịkọta zuru ezu:
- oneAPI maka NVIDIA GPUs Ntuziaka mmalite
- oneAPI maka AMD GPUs Ntuziaka mmalite
Nhọrọ 2: Jiri eklips * CDT
Soro usoro ndị a ka ịkpọku onye nchịkọta si n'ime Eclipse* CDT.
Wụnye ngwa mgbakwunye Intel® Compiler Eclipse CDT.
- Malite eklips
- Họrọ Enyemaka > Wụnye ngwanrọ ọhụrụ
- Họrọ Tinye ka imepe mkparịta ụka Tinye saịtị
- Họrọ ebe nchekwa, chọgharịa na ndekọ /onye nchịkọta/ /linux/ide_support, họrọ .zip file nke na-amalite na com.intel.dpcpp.compiler, wee họrọ OK
- Họrọ nhọrọ na-amalite site na Intel, họrọ Ọzọ, wee soro ntuziaka nwụnye
- Mgbe jụrụ ma ịchọrọ ịmalite Eclipse*, họrọ Ee
Rụpụta ọrụ ọhụrụ ma ọ bụ mepee ọrụ dị adị.
- Mepee Project dị adị ma ọ bụ Mepụta Project ọhụrụ na Eclipse
- Pịa aka nri na Project> Ngwongwo> C/C++ Mee> Editọ yinye
- Họrọ Intel DPC++/C++ Compiler si n'akụkụ aka nri
Tọọ nhazi ụlọ.
- Mepee Project dị adị na Eclipse
- Pịa aka nri na Project> Njirimara> C/C++ Mee> Ntọala
- Mepụta ma ọ bụ jikwaa nhazi nhazi n'akụkụ aka nri
Wulite Mmemme Site n'ahịrị Iwu
Jiri usoro ndị a iji nwalee nrụnye mkpokọta gị wee wuo mmemme.
- Jiri ndezi ederede ka imepụta a file akpọrọ hello-world.cpp nwere ọdịnaya ndị a:
- Mepụta hello-world.cpp:
icpx ndewo-ụwa.cpp -o ndewo-ụwa
Nhọrọ -o na-akọwapụta file aha maka mmepụta emepụtara. - Ugbu a ị nwere onye nrụpụta a na-akpọ hello-world nke enwere ike ịgba ọsọ ma nye nzaghachi ozugbo:
Kedu ihe na-apụta
Ị nwere ike iduzi ma jikwaa nchịkọta site na iji nhọrọ nchịkọta. Maka example, ị nwere ike ịmepụta ihe ahụ file wee wepụta ọnụọgụ abụọ ikpeazụ n'ụzọ abụọ:
- Mepụta hello-world.cpp:
Nhọrọ -c na-egbochi njikọ na nzọụkwụ a.
- Jiri icpx compiler iji jikọta koodu ihe ngwa na-arụpụta wee wepụta ihe arụrụ arụ:
Nhọrọ -o na-akọwapụta ihe arụpụtara arụ ọrụ file aha. Rụtụ aka na Nhọrọ Compiler maka nkọwa gbasara nhọrọ dị.
Bido na Windows
Tupu Ị Malite
Tọọ mgbanwe gburugburu
Ngwakọta ahụ na-ejikọta na ụdị Microsoft Visual Studio* ndị a:
- Visual Studio 2022
- Visual Studio 2019
- Visual Studio 2017
IHE Akwụsịla nkwado maka Microsoft Visual Studio 2017 dị ka nke ntọhapụ Intel® oneAPI 2022.1 na a ga-ewepụ ya na ntọhapụ n'ọdịnihu.
Maka ịrụ ọrụ zuru oke n'ime Visual Studio, gụnyere nbipu na mmepe, Visual Studio Community Edition ma ọ bụ karịa ka achọrọ. Visual Studio Express Edition na-enye ohere naanị iwu-akara iwu. Maka ụdịdị niile, nkwado Microsoft C++ ga-ahọpụtarịrị dịka akụkụ nke nrụnye Visual Studio. Maka Visual Studio 2017 na emesịa, ị ga-eji nrụnye omenala iji họrọ nhọrọ a.
Ọ dịghị mkpa ka ị na-edobe mgbanwe gburugburu na Windows, dịka mpio ahịrị iwu nchịkọta akụkọ na-edobere gị mgbanwe ndị a na-akpaghị aka. Ọ bụrụ na ịchọrọ ịtọ mgbanwe gburugburu ebe obibi, mee script gburugburu dịka akọwara n'ime akwụkwọ mmalite-kpọmkwem.
Akwụkwọ ndekọ nrụnye nke ndabara ( ) bụ C:\Program Files (x86)\Intel oneAPI.
Wụnye ndị ọkwọ ụgbọala GPU (Nhọrọ)
Iji mepụta ma mee ngwa maka Intel GPUs, ị ga-ebu ụzọ wụnye ndị ọkwọ ụgbọala Intel GPU kacha ọhụrụ.
Nhọrọ 1: Jiri ahịrị iwu na Microsoft Visual Studio
Intel® oneAPI DPC++/C++ Compiler na-enye ọtụtụ ndị ọkwọ ụgbọala:
Jiri syntax a kpọọ onye nchịkọta oku:
Iji ahịrị iwu sitere n'ime Microsoft Visual Studio kpọku ndị nchịkọta, mepee iwu ozugbo wee tinye iwu nchịkọta gị. Maka exampLe:
Maka nchịkọta SYCL, jiri nhọrọ -fsycl na ọkwọ ụgbọala C ++:
IHE: Mgbe ị na-eji -fsycl, -fsycl-targets=spir64 ka a na-eche ma ọ bụrụ na edobere -fsycl-targets n'ụzọ doro anya na iwu ahụ.
Nhọrọ 2: Jiri Microsoft Visual Studio
Nkwado oru ngo maka Intel® DPC+/C++ Compiler na Microsoft Visual Studio
A na-ahazi oru ngo Microsoft Visual Studio ọhụrụ maka DPC++ ka ọ jiri Intel® oneAPI DPC++/C++ Compiler.
A ghaghị iji aka hazie ọrụ Microsoft Visual C++* (MSVC) ọhụrụ iji jiri Intel® oneAPI DPC++/C++ Compiler.
IHE: Ụdị ọrụ CLR C++ dabere na NET anaghị akwado Intel® oneAPI DPC++/C++ Compiler. Ụdị ọrụ a kapịrị ọnụ ga-adịgasị iche dabere na ụdị nke Visual Studio gị, maka example: Ọbá akwụkwọ CLR CLR, CLR Console App, ma ọ bụ CLR efu Project.
Jiri Intel® DPC++/C++ Compiler na Microsoft Visual Studio
Kpọmkwem nzọụkwụ nwere ike ịdị iche dabere na ụdị Microsoft Visual Studio a na-eji.
- Mepụta ọrụ Microsoft Visual C++ (MSVC) ma ọ bụ mepee ọrụ dị adị.
- Na Nchọgharị Ngwọta, họrọ oru ngo nke ị ga-eji Intel® oneAPI DPC++/C++ Compiler wuo.
- Mepee Project > Njirimara .
- N'akụkụ aka ekpe, gbasaa ngalaba Njirimara Nhazi wee họrọ ibe ihe onwunwe izugbe.
- Na pane aka nri gbanwee Platform Toolset ka ọ bụrụ nchịkọta ihe ịchọrọ iji:
- Maka C++ nwere SYCL, họrọ Intel® oneAPI DPC++ Compiler.
- Maka C / C ++, enwere ngwaọrụ abụọ.
Họrọ Intel C++ Compiler (Example 2021) ịkpọku icx.
Họrọ Intel C++ Compiler (Example 19.2) ịkpọku icl.
N'aka nke ọzọ, ị nwere ike ịkọwapụta ụdị nchịkọta dị ka ngwá ọrụ maka nyiwe niile akwadoro na nhazi nke ọrụ ahọpụtara site na ịhọrọ Project > Intel Compiler > Jiri Intel oneAPI DPC ++/C++ Compiler.
- Megharia, na-eji ma wuo> Project naanị> wughachi maka otu oru ngo ma ọ bụ wulite> wughachi ihe ngwọta maka ngwọta.
Họrọ Ụdị nchịkọta
Ọ bụrụ na ị nwere ọtụtụ ụdị Intel® oneAPI DPC++/C++ Compiler arụnyere, ị nwere ike họrọ ụdị nke ịchọrọ n'igbe mkparịta ụka Compiler Selection:
- Họrọ oru ngo, wee gaa na Ngwaọrụ> Nhọrọ> Intel Compilers na Library> > Ndị nchịkọta, ebe ụkpụrụ bụ C++ ma ọ bụ DPC++.
- Jiri menu ndọda ahọpụtara ka ịhọrọ ụdị nke mkpokọta kwesịrị ekwesị.
- Họrọ OK.
Gbanwee laghachi na Microsoft Visual Studio C++ Compiler
Ọ bụrụ na ọrụ gị na-eji Intel® oneAPI DPC++/C++ Compiler, ị nwere ike họrọ ịlaghachi na Microsoft Visual C++ compiler:
- Họrọ ọrụ gị na Microsoft Visual Studio.
- Pịa aka nri wee họrọ Intel Compiler> Jiri Visual C++ site na menu onodu.
Omume a na-emelite ngwọta file iji Microsoft Visual Studio C++ compiler. A na-ehicha nhazi niile nke ọrụ emetụtara na-akpaghị aka ma ọ bụrụ na ịhọrọ adịghị ọcha (ọrụ). Ọ bụrụ n’ịhọrọ ịghara ihicha oru ngo, ị ga-achọ ịrụgharị ọrụ emelitere iji hụ na isi mmalite niile fileA na-ejikọta s na nchịkọta ọhụrụ.
Wulite Mmemme Site n'ahịrị Iwu
Jiri usoro ndị a iji nwalee nrụnye mkpokọta gị wee wuo mmemme.
- Jiri ndezi ederede ka imepụta a file akpọrọ hello-world.cpp nwere ọdịnaya ndị a:
#gụnye int main() std::cout << "Ndewo, ụwa!\n"; laghachi 0; - Mepụta hello-world.cpp:
icx ndewo-ụwa.cpp - Ugbu a ị nwere arụ ọrụ a na-akpọ hello-world.exe nke enwere ike ịgba ọsọ ma nye nzaghachi ozugbo:
ndewo-world.exe
Kedu ihe ga-apụta:
Ndewo Ụwa!
Ị nwere ike iduzi ma jikwaa nchịkọta site na iji nhọrọ nchịkọta. Maka example, ị nwere ike ịmepụta ihe ahụ file wee wepụta ọnụọgụ abụọ ikpeazụ n'ụzọ abụọ:
- Mepụta hello-world.cpp:
icx ndewo-world.cpp /c /Fohello-world.obj
Nhọrọ / c na-egbochi njikọ na nzọụkwụ a na /Fo na-akọwapụta aha maka ihe ahụ file. - Jiri icx compiler iji jikọta koodu ihe ngwa na-arụpụta wee wepụta ihe arụrụ arụ:
icx ndewo-world.obj /Fehello-world.exe - Nhọrọ / Fe na-akọwapụta ihe arụpụtara file aha. Rụtụ aka na Nhọrọ Compiler maka nkọwa gbasara nhọrọ dị.
Mepụta ma mebie Sampna Koodu
Otutu koodu sampA na-enye les maka Intel® oneAPI DPC++/C++ Compiler ka ị nwee ike nyochaa njirimara nchịkọta ma mara onwe gị ka ọ si arụ ọrụ. Maka exampLe:
Nzọụkwụ ọzọ
- Jiri koodu S. API kacha ọhụrụamples ma soro yana Intel® oneAPI Training Resources.
- Chọgharịa Intel® oneAPI DPC++/C++ Ntuziaka Onye Mmepụta Ntụaka na Mpaghara Mmepụta Intel®.
Akwụkwọ / akụrụngwa
![]() |
intel Bido na otuAPI DPC ++/C++ Compiler [pdf] Ntuziaka onye ọrụ Malite na otuAPI DPC C Compiler, Malite na, otuAPI DPC C Compiler |