PoCL 6.0 vÀljaanne, sÔltumatu OpenCL standardi rakendus

On avaldatud PoCL 6.0 (Portable Computing Language OpenCL) projekti vÀljaanne, mis arendab OpenCL standardi, sÔltumatu graafikakiirendajatest, elluviimist ja vÔimaldab erinevate tagapÔhjade kasutamist OpenCL tuumade kÀitamiseks erinevatel graafika- ja keskprotsessoritel. Projekti kood on jaotatud MIT litsentsi alusel. Toetatakse toimimist X86_64, MIPS32, ARM v7, AMD HSA APU, NVIDIA GPU ja erinevates spetsialiseeritud ASIP (rakendusele spetsiifiline kÀskude kogum) ja TTA-protsessoritel (Transport Triggered Architecture) VLIW arhitektuuriga.

OpenCL tuumade kompilaatori rakendamine pĂ”hineb LLVM-il, samas kui OpenCL C jaoks kasutatakse eesotsana Clang'i. Kompilaator vĂ”ib genereerida kombineeritud funktsioone, mis suudavad kasutada erinevaid riistvararessursse koodi paralleelse tĂ€itmise jaoks, nĂ€iteks VLIW, super-skalaarsus, SIMD, SIMT, mitmekesiste ja mitme kiirusreĆŸiimine. Toetatakse ICD draivereid.
(Installable Client Driver). TagapÔhjad on olemas, et toetada toimimist lÀbi CPU, ASIP (TCE/TTA), HSA arhitektuuril pÔhineva GPU ja NVIDIA GPU (libcuda kaudu).

Uues versioonis:

  • Lisatud tugi Clang/LLVM 18.0 jaoks, toetus LLVM 10, 11, 12 ja 13 lĂ”petatud.
  • Elluviidud uus cpu-tbb tagapĂ”hi, mis kasutab operatsioonide paralleelseks kĂ€itamiseks ja ĂŒlesannete ajastamiseks Intel'i OneTBB teeki.
  • CPU tagapĂ”hjas, mis toetab OpenCL tuumade kĂ€ivitamist CPU-l, on lisatud paralelleerimise programmeerimise standard OpenMP, lisatud meetod clGetDeviceAndHostTimer(), samuti on ellu viidud katseklaasi laiendused cl_pocl_svm_rect, cl_pocl_command_buffer_svm ja cl_pocl_command_buffer_host_buffer.
  • ‘Remote’ tagapĂ”hja, mis on mĂ”eldud jaotatud arvutuste korraldamiseks, kus OpenCL kĂ€skude töötlemine on viidud teistesse vĂ”rkudesse, millel töötab taustprotsess pocld, on lisatud tugi CG SVM (Coarse-Grain Shared Virtual Memory), vĂ”imalus kasutada Vsock kommunikatsiooniprotokolli ja toetada programmide kompileerimist ja sidumist clCompileProgram() ja clLinkProgram() funktsioonide kaudu.
  • LevelZero tagapĂ”hjas, kasutades Level Zero API-d, on lubatud luua ĂŒle 4GB suurusi puute ja teostatud sĂŒnkroniseerimise protsesside optimeerimised.
  • CUDA tagapĂ”hjas on ellu viidud operatsioonid sub_group_shuffle ja sub_group_shuffle_xor, samuti on suurendatud CL_DEVICE_MAX_MEM_ALLOC_SIZE piiri.

Allikas: opennet.ru

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster