intel DPC++ Compatibility Tool 

intel DPC++ Compatibility Tool

Magsimula gamit ang Intel® DPC+ + Compatibility Tool

Tumutulong ang Intel® DPC++ Compatibility Tool sa paglipat ng program ng developer na nakasulat sa CUDA* sa isang program na nakasulat sa Data Parallel C++ (DPC++), na nakabatay sa modernong C++ at isinasama ang mga portable na pamantayan ng industriya gaya ng SYCL*.

  • Bisitahin ang Intel® DPC++ Compatibility Tool Developer Guide at Reference para sa karagdagang impormasyon tungkol sa tool.
  • Bisitahin ang Mga Tala sa Paglabas para sa mga kilalang isyu at ang pinaka-up-to-date na impormasyon.

TANDAAN Ang paggamit ng Intel® DPC++ Compatibility Tool ay magreresulta sa isang proyekto na hindi ganap na na-migrate. Karagdagang gawain, gaya ng nakabalangkas sa output ng Intel® DPC++ Compatibility Tool, ay kinakailangan upang makumpleto ang paglipat.

Bago Ka Magsimula

Ang Intel® DPC++ Compatibility Tool ay kasama sa Intel® oneAPI Base Toolkit. Kung hindi mo pa na-install ang Intel® oneAPI Base Toolkit, sundin ang mga tagubilin sa Gabay sa Pag-install.

Ilang CUDA header files (partikular sa iyong proyekto) ay maaaring kailangang ma-access sa Intel® DPC++
Tool sa Pagkatugma. Hinahanap ng Intel® DPC++ Compatibility Tool ang CUDA header na ito files sa mga default na lokasyon:

  • /usr/local/cuda/include
  • /usr/local/cuda-xy/include, kung saan ang xy ay isa sa mga value na ito: 8.0, 9.x, 10.x, at 11.0–11.6.

Maaari kang sumangguni sa mga custom na lokasyon sa pamamagitan ng pagturo sa kanila gamit ang –cuda-include-path= opsyon sa Intel® DPC++ Compatibility Tool command line.

TANDAAN Ang CUDA include path ay hindi dapat kapareho ng, o isang child path ng, ang direktoryo kung saan matatagpuan ang source code na kailangang i-migrate.

Sa kasalukuyan, sinusuportahan ng Intel® DPC++ Compatibility Tool ang paglipat ng mga program na ipinatupad sa mga bersyon ng CUDA 8.0, 9.x, 10.x, at 11.0–11.6. Ang listahan ng mga sinusuportahang wika at bersyon ay maaaring palawigin sa hinaharap.

Upang i-set up ang kapaligiran ng Intel® DPC++ Compatibility Tool, patakbuhin ang sumusunod:

  • Sa Linux (sudo): pinagmulan /opt/intel/oneapi/setvars.sh
  • Sa Linux (user): pinagmulan ~/intel/oneapi/setvars.sh
  • Sa Windows :Drive:\ Programa Files (x86)\Intel\oneAPI\setvars.bat

Ang pangkalahatang invocation syntax mula sa operating system shell ay:

dpct [mga opsyon] [ … ]

TANDAAN Ang c2s ay isang alias sa dpct command at maaaring gamitin sa lugar nito.

Built-in na Impormasyon sa Paggamit 

Upang makita ang listahan ng mga opsyon na partikular sa Intel® DPC++ Compatibility Tool, gamitin ang –help:

dpct –tulong

Upang makita ang listahan ng mga opsyon sa parser ng wika (Clang*), ipasa ang -help bilang opsyong Clang:

dpct — -tulong
Mga Inilabas na Babala

Tinutukoy ng Intel® DPC++ Compatibility Tool ang mga lugar sa code na maaaring mangailangan ng iyong pansin sa panahon ng paglipat ng files upang gawin ang code na SYCL na sumusunod o tama.
Ang mga komento ay ipinasok sa nabuong pinagmulan files at ipinapakita bilang mga babala sa output. Para kay example:

/path/to/file.hpp:26:1: babala: DPCT1003:0: Ang Migrated API ay hindi nagbabalik ng error code. (*,0) ay ipinasok. Maaaring kailanganin mong muling isulat ang code na ito. // source code line kung saan nabuo ang babala ^

Para sa higit pang mga detalye sa kung ano ang ibig sabihin ng isang partikular na babala, sumangguni sa Diagnostic Reference.

Para sa higit pang mga detalye sa kung ano ang ibig sabihin ng isang partikular na babala, sumangguni sa Diagnostic Reference.

Mag-migrate ng Simple Test Project

Ang Intel® DPC++ Compatibility Tool ay may ilang sampmga proyekto upang ma-explore mo ang tool at maging pamilyar sa kung paano ito gumagana:

Sampang Proyekto Paglalarawan
 Vector Magdagdag ng DPCT
  • vector_add.cu
Ang Vector Add DPCT sample ay nagpapakita kung paano mag-migrate ng isang simpleng programa mula sa CUDA patungo sa SYCL. Nagbibigay ang Vector Add ng madaling paraan upang i-verify na ang iyong development environment ay na-setup nang tama upang magamit ang Intel® DPC++ Compatibility Tool.
Mga Opsyon sa Folder DPCT
  • main.cu
  • bar/util.cu
  • bar/util.h
Ang Folder Options DPCT sampIpinapakita nito kung paano mag-migrate ng mas kumplikadong mga proyekto at gumamit ng mga opsyon.
Rodinia NW DPCT
  • karayom.cu
  • karayom.h
  • needle_kernel.cu
Ang Rodinia NW DPCT sampIpinapakita nito kung paano i-migrate ang isang proyekto ng Make/CMake mula sa CUDA patungo sa SYCL gamit ang Intel® DPC++ Compatibility Tool.

Review ang README file ibinigay sa bawat sample para sa mas detalyadong impormasyon tungkol sa layunin at paggamit ng sampang proyekto.

Upang ma-access ang samples

  • gamitin ang oneapi-cli utility upang pumili bilangampmula sa kategorya ng Intel® DPC++ Compatibility Tool, o
  • i-download ang samples mula sa GitHub*.

Para sa mas detalyadong impormasyon kung paano i-download at i-access ang samples, bisitahin ang Intel® oneAPI Base Toolkit Mga Gabay sa Pagsisimula:

Subukan ang isang Sampang Proyekto 

Sundin ang mga hakbang na ito para i-migrate ang Vector Add DPCT sampang proyekto gamit ang Intel® DPC++ Compatibility Tool:

  1. I-download ang vector_add.cu sample.
  2. Patakbuhin ang Intel® DPC++ Compatibility Tool mula sa sampang root directory:
    dpct –in-root=. src/vector_add.cu

     

    Ang vector_add.dp.cpp file dapat lumitaw sa direktoryo ng dpct_output. Ang file ay isa na ngayong SYCLsource file.

  3. Mag-navigate sa bagong source ng SYCL file:
cd dpct_output

I-verify ang nabuong source code at ayusin ang anumang code na hindi nagawang i-migrate ng Intel® DPC++ Compatibility Tool. (Ang code na ginamit sa ex na itoample ay simple, kaya maaaring hindi kailanganin ang mga manu-manong pagbabago). Para sa pinakatumpak at detalyadong mga tagubilin sa pagtugon sa mga babala na ibinubuga mula sa Intel® DPC++ Compatibility Tool, tingnan ang seksyong Pagtugon sa Mga Babala sa Migrated Code ng README files.

TANDAAN Upang i-compile ang migrate sample, idagdag ang -I/include sa iyong compile command.

Para sa mas kumplikadong mga sample mga tagubilin, tingnan ang Mag-migrate ng Proyekto seksyon ng Intel® DPC++ Compatibility Tool Developer Guide at Reference.

Maghanap ng Higit Pa

Nilalaman Paglalarawan
Intel® DPC++ Compatibility

Gabay sa Developer ng Tool at

Sanggunian

Detalyadong tapos naview ng mga feature, workflow, at paggamit ng Intel® DPC++ Compatibility Tool.
On-Demand Webinar:

Paglipat ng Iyong Umiiral na CUDA

Code sa DPC++ Code

Paano i-migrate ang CUDA code sa Data Parallel C++ (DPC++) gamit ang Intel® DPC++ Compatibility Tool, isang minsanang migration engine na nag-port ng mga kernel at API call.
Mga Gabay sa Pag-install para sa Intel®

oneAPI Toolkits

Mga detalyadong tagubilin sa kung paano kumuha at mag-install ng Intel® oneAPI packages gamit ang iba't ibang installer mode at package manager.
bersyon ng pagtutukoy ng SYCL

1.2.1 PDF

Ang SYCL Specification PDF. Ipinapaliwanag kung paano isinasama ng SYCL ang mga OpenCL device sa modernong C++.
Detalye ng SYCL 2020 Ang SYCL 2020 Specification PDF.
Khronos* SYCL tapos naview Isang taposview ng SYCL na ibinigay ng Khronos Group.
Kino-compile ang CUDA na may clang Paglalarawan ng suporta ng CUDA sa clang.
Mga extension ng Intel LLVM SYCL Iminungkahing mga extension sa detalye ng SYCL.
Mga Layer para sa Yocto* Project Magdagdag ng isang bahagi ng API sa isang Yocto project build gamit ang meta-intel layers.

Intel Logo

Mga Dokumento / Mga Mapagkukunan

intel DPC++ Compatibility Tool [pdf] Gabay sa Gumagamit
Tool sa Compatibility ng DPC, Tool sa Compatibility, Tool

Mga sanggunian

Mag-iwan ng komento

Ang iyong email address ay hindi maipa-publish. Ang mga kinakailangang field ay minarkahan *