intel DPC++ нийцтэй байдлын хэрэгсэл 

intel DPC++ нийцтэй байдлын хэрэгсэл

Intel® DPC+ + Compatibility Tool-ийг ашиглаж эхлээрэй

Intel® DPC++ Compatibility Tool нь CUDA* хэл дээр бичигдсэн хөгжүүлэгчийн программыг орчин үеийн C++ дээр суурилсан, SYCL* зэрэг зөөврийн салбарын стандартуудыг агуулсан Data Parallel C++ (DPC++) дээр бичигдсэн програм руу шилжүүлэхэд тусалдаг.

  • Уг хэрэгслийн талаарх нэмэлт мэдээллийг Intel® DPC++ Compatibility Tool хөгжүүлэгчийн гарын авлага болон лавлагаа руу орж үзнэ үү.
  • Мэдэгдэж буй асуудлууд болон хамгийн сүүлийн үеийн мэдээллийг авахын тулд хувилбарын тэмдэглэл рүү зочилно уу.

ЖИЧ Intel® DPC++ Compatibility Tool-ийг ашигласнаар төслийг бүхэлд нь шилжүүлээгүй болно. Шилжилтийг дуусгахын тулд Intel® DPC++ Compatibility Tool-ийн гаралтын дагуу нэмэлт ажил хийх шаардлагатай.

Эхлэхээсээ өмнө

Intel® DPC++ нийцтэй байдлын хэрэгсэл нь Intel® oneAPI үндсэн хэрэгсэлд багтсан болно. Хэрэв та Intel® oneAPI Base Toolkit суулгаагүй бол Суулгах гарын авлагын зааврыг дагана уу.

Тодорхой CUDA толгой files (таны төсөлд зориулагдсан) нь Intel® DPC++-д хандах боломжтой байх шаардлагатай
Тохиромжтой хэрэгсэл. Intel® DPC++ Compatibility Tool нь эдгээр CUDA толгой хэсгийг хайж олдог files үндсэн байршилд:

  • /usr/local/cuda/include
  • /usr/local/cuda-xy/include, энд xy нь эдгээр утгуудын нэг юм: 8.0, 9.x, 10.x, 11.0–11.6.

Та захиалгат байршлыг –cuda-include-path=-аар зааж өгч болно Intel® DPC++ Compatibility Tool командын мөрөнд байгаа сонголт.

ЖИЧ CUDA оруулах зам нь шилжүүлэх шаардлагатай эх код байрладаг лавлахтай ижил эсвэл түүний хүүхэд зам байж болохгүй.

Одоогоор Intel® DPC++ Compatibility Tool нь CUDA-ийн 8.0, 9.x, 10.x, 11.0–11.6 хувилбаруудтай хэрэгжсэн программуудын шилжилтийг дэмждэг. Дэмжигдсэн хэл болон хувилбаруудын жагсаалтыг ирээдүйд өргөжүүлэх боломжтой.

Intel® DPC++ Compatibility Tool орчныг тохируулахын тулд дараахыг ажиллуулна уу:

  • Линукс дээр (sudo): эх сурвалж /opt/intel/oneapi/setvars.sh
  • Линукс дээр (хэрэглэгч): эх сурвалж ~/intel/oneapi/setvars.sh
  • Windows дээр :Драйв:\ Програм Files (x86)\Intel\oneAPI\setvars.bat

Үйлдлийн системийн бүрхүүлийн дуудлагын ерөнхий синтакс нь:

dpct [сонголт] [ … ]

ЖИЧ c2s нь dpct командын нэр бөгөөд оронд нь ашиглаж болно.

Баригдсан хэрэглээний мэдээлэл 

Intel® DPC++ нийцтэй байдлын хэрэгслийн жагсаалтыг харахын тулд –help-г ашиглана уу:

dpct - тусламж

Хэл задлагч (Clang*) сонголтуудын жагсаалтыг харахын тулд Clang сонголтоор -help-г оруулна уу:

dpct - тусламж
Гаргасан анхааруулга

Intel® DPC++ нийцтэй байдлын хэрэгсэл нь кодыг шилжүүлэх явцад таны анхаарал хандуулах шаардлагатай газруудыг тодорхойлдог. files кодыг SYCL-д нийцсэн эсвэл зөв болгохын тулд.
Сэтгэгдэлийг үүсгэсэн эх сурвалжид оруулсан болно files ба гаралт дээр анхааруулга хэлбэрээр харагдана. Жишээ ньampле:

/зам/ хүрэх/file.hpp:26:1: анхааруулга: DPCT1003:0: Шилжүүлсэн API нь алдааны кодыг буцаадаггүй. (*,0) оруулсан байна. Та энэ кодыг дахин бичих шаардлагатай байж магадгүй. // анхааруулга үүсгэсэн эх кодын мөр ^

Тодорхой сэрэмжлүүлэг нь юу гэсэн үг болохыг дэлгэрэнгүй үзэхийг хүсвэл Оношлогооны лавлагаа.

Тодорхой сэрэмжлүүлэг нь юу гэсэн үг болохыг илүү дэлгэрэнгүй мэдээлэл авахыг хүсвэл Оношилгооны лавлагааг үзнэ үү.

Энгийн туршилтын төслийг шилжүүлэх

Intel® DPC++ Compatibility Tool нь хэд хэдэн с-тэй ирдэгampтөслүүдийг ашигласнаар та уг хэрэгслийг судалж, хэрхэн ажилладаг талаар нь танилцах боломжтой болно:

SampТөсөл Тодорхойлолт
 Вектор DPCT нэмэх
  • vector_add.cu
Вектор нэмэх DPCT sample энгийн программыг CUDA-аас SYCL руу хэрхэн шилжүүлэхийг харуулж байна. Vector Add нь Intel® DPC++ Compatibility Tool-ийг ашиглахын тулд таны хөгжүүлэлтийн орчин зөв тохируулагдсан эсэхийг шалгах хялбар арга юм.
Хавтасны сонголтууд DPCT
  • main.cu
  • bar/util.cu
  • bar/util.h
Фолдерын сонголтууд DPCT sample нь илүү төвөгтэй төслүүдийг хэрхэн шилжүүлэх, сонголтуудыг ашиглахыг харуулж байна.
Rodinia NW DPCT
  • зүү.cu
  • зүү.х
  • needle_kernel.cu
Rodinia NW DPCT sample нь Intel® DPC++ Compatibility Tool ашиглан Make/ CMake төслийг CUDA-аас SYCL руу хэрхэн шилжүүлэхийг харуулж байна.

Review README file s бүрээр хангагдсанamps-ийн зорилго, хэрэглээний талаар илүү дэлгэрэнгүй мэдээлэл авахыг хүсвэл leample төсөл.

s руу нэвтрэхийн тулдamples

  • гэж сонгохын тулд oneapi-cli хэрэгслийг ашиглана ууample Intel® DPC++ Compatibility Tool ангилалаас, эсвэл
  • s татаж авахamples from GitHub*.

Хэрхэн татаж авах, хандах талаар дэлгэрэнгүй мэдээлэл авахыг хүсвэл samples, Intel® oneAPI үндсэн хэрэгслийн хэрэглүүрийг эхлүүлэх гарын авлагыг үзнэ үү:

S-г үзээрэйampТөсөл 

Vector Add DPCT s-г шилжүүлэхийн тулд эдгээр алхмуудыг дагана ууampIntel® DPC++ Compatibility Tool ашиглан төсөл:

  1. vector_add.cu файлыг татаж авна ууample.
  2. s-ээс Intel® DPC++ Compatibility Tool-ийг ажиллуулна ууampүндсэн директор:
    dpct – in-root =. src/vector_add.cu

     

    vector_add.dp.cpp file dpct_output санд харагдах ёстой. The file одоо SYCLsource байна file.

  3. Шинэ SYCL эх сурвалж руу шилжинэ үү file:
cd dpct_output

Үүсгэсэн эх кодыг баталгаажуулж, Intel® DPC++ Compatibility Tool шилжүүлж чадаагүй аливаа кодыг засна уу. (Энэ жишээнд ашигласан кодample энгийн тул гараар өөрчлөх шаардлагагүй байж магадгүй). Intel® DPC++ нийцтэй байдлын хэрэглүүрээс ялгарах сэрэмжлүүлгийг хаягжуулах хамгийн үнэн зөв, нарийвчилсан зааврыг "Шилжүүлсэн код дахь анхааруулгыг хаяглах" хэсгээс үзнэ үү. README files.

ЖИЧ Шилжүүлсэн s-г эмхэтгэхийн тулдample, хөрвүүлэх команддаа -I/include нэмнэ.

Илүү төвөгтэй sampзааварчилгааг үзнэ үү Төслийг шилжүүлэх Intel® DPC++ Compatibility Tool хөгжүүлэгчийн гарын авлага, лавлагааны хэсэг.

Илүү хай

Агуулга Тодорхойлолт
Intel® DPC++ нийцтэй байдал

Хэрэгсэл хөгжүүлэгчийн гарын авлага ба

Лавлагаа

Дэлгэрэнгүйview Intel® DPC++ Compatibility Tool-ийн онцлог, ажлын урсгал болон ашиглалт.
Хүсэлтийн дагуу Webинар:

Одоо байгаа CUDA-г шилжүүлж байна

DPC++ код руу код

Intel® DPC++ Compatibility Tool ашиглан CUDA кодыг Data Parallel C++ (DPC++) руу хэрхэн шилжүүлэх вэ, цөм болон API дуудлагыг хоёуланг нь холбодог нэг удаагийн шилжих хөдөлгүүр.
Intel®-д зориулсан суулгах гарын авлага

oneAPI хэрэгслүүд

Янз бүрийн суулгагч горим болон багц менежерүүдийг ашиглан Intel® oneAPI багцуудыг хэрхэн авах, суулгах талаарх дэлгэрэнгүй заавар.
SYCL тодорхойлолтын хувилбар

1.2.1 PDF

SYCL тодорхойлолт PDF. SYCL нь OpenCL төхөөрөмжүүдийг орчин үеийн C++-тэй хэрхэн нэгтгэж байгааг тайлбарладаг.
SYCL 2020 тодорхойлолт SYCL 2020 техникийн тодорхойлолт PDF.
Khronos* SYCL дууссанview Нэг гаруйview Хронос группээс өгсөн SYCL.
Clang ашиглан CUDA-г эмхэтгэж байна Clang дахь CUDA дэмжлэгийн тодорхойлолт.
Intel LLVM SYCL өргөтгөлүүд SYCL тодорхойлолтод санал болгож буй өргөтгөлүүд.
Yocto* төслийн давхаргууд Meta-intel давхаргыг ашиглан Yocto төслийн бүтээхэд нэг API бүрэлдэхүүн хэсгийг нэмнэ үү.

Intel лого

Баримт бичиг / нөөц

intel DPC++ нийцтэй байдлын хэрэгсэл [pdf] Хэрэглэгчийн гарын авлага
DPC Compatibility Tool, Compatibility Tool, Tool

Лавлагаа

Сэтгэгдэл үлдээгээрэй

Таны имэйл хаягийг нийтлэхгүй. Шаардлагатай талбаруудыг тэмдэглэсэн *