Rhyddhau PoCL 5.0 gyda gweithrediad annibynnol o safon OpenCL

Mae rhyddhau'r prosiect PoCL 5.0 (Iaith Cyfrifiadura Cludadwy OpenCL) wedi'i gyhoeddi, gan ddatblygu gweithrediad y safon OpenCL sy'n annibynnol ar weithgynhyrchwyr cyflymwyr graffeg ac sy'n caniatáu defnyddio gwahanol gefnau ar gyfer gweithredu cnewyllyn OpenCL ar wahanol fathau o graffeg a phroseswyr canolog. . Mae cod y prosiect yn cael ei ddosbarthu o dan y drwydded MIT. Yn cefnogi gwaith ar lwyfannau X86_64, MIPS32, ARM v7, AMD HSA APU, NVIDIA GPU a phroseswyr ASIP (Prosesydd Gosod Cyfarwyddiadau Penodol i Gais) a TTA (Pensaernïaeth Sbarduno Trafnidiaeth) gyda phensaernïaeth VLIW.

Mae gweithrediad casglwr cnewyllyn OpenCL wedi'i adeiladu ar sail LLVM, a defnyddir Clang fel pen blaen OpenCL C. Er mwyn sicrhau hygludedd a pherfformiad priodol, gall casglwr cnewyllyn OpenCL gynhyrchu swyddogaethau cyfunol a all ddefnyddio adnoddau caledwedd amrywiol i gyfochrog â gweithredu cod, megis VLIW, superscalar, SIMD, SIMT, aml-graidd ac aml-edafu. Mae cefnogaeth i yrwyr ICD (Gyrrwr Cleient Gosodadwy). Mae yna gefnlenni i gefnogi gweithrediad trwy CPU, ASIP (TCE / TTA), GPU yn seiliedig ar bensaernïaeth HSA a GPU NVIDIA (trwy libcuda).

Yn y fersiwn newydd:

  • Mae backend “Anghysbell” newydd wedi'i weithredu, wedi'i gynllunio i drefnu cyfrifiadura dosranedig trwy drosglwyddo prosesu gorchmynion OpenCL i westeion eraill ar y rhwydwaith sy'n rhedeg y broses pocld cefndir.
  • Mae'r gyrrwr CUDA yn gweithredu nodweddion ychwanegol ac estyniadau o OpenCL 3.0, megis gweithrediadau atomig, newidynnau scoped, intel_sub_group_shuffle, intel_sub_group_shuffle_xor, get_sub_group_local_id, sub_group_barrier, ac sub_group_ballot.
  • Gwell cefnogaeth i CPUs yn seiliedig ar bensaernïaeth RISC-V. Profwyd gweithrediad PoCL ar fwrdd Starfive VisionFive 2 wedi'i lwytho ag amgylchedd Ubuntu 23.10 gyda LLVM 17 a GCC 13.2.
  • Mae'r estyniad cl_ext_float_atomics wedi'i weithredu gyda chefnogaeth ar gyfer FP32 a FP64.
  • Mae gweithrediad yr estyniad cl_khr_command_buffer wedi'i ddiweddaru i fersiwn 0.9.4.
  • Mae backend AlmaIF arbrofol ar gyfer FPGAs wedi'i gynnig.
  • Wedi dileu cefnogaeth anghyflawn ar gyfer cynrychiolaeth ganolraddol o arlliwwyr SPIR 1.x/2.0. Mae SPIR-V yn cael ei ddatgan fel yr iaith arlliwio canolradd a argymhellir.
  • Cefnogaeth ychwanegol i Clang/LLVM 17.0. Mae cefnogaeth ar gyfer Clang/LLVM 10-13 wedi'i anghymeradwyo.

Ffynhonnell: opennet.ru

Ychwanegu sylw