Hoʻokuʻu i ka PoCL 3.1 me ka hoʻokō kūʻokoʻa o ka maʻamau OpenCL

Ua hōʻike ʻia kahi hoʻokuʻu ʻana o ka papahana PoCL 3.1 (Portable Computing Language OpenCL), e hoʻomohala ana i ka hoʻokō ʻana i ka standard OpenCL e kūʻokoʻa ana i nā mea hana accelerator kiʻi a hiki i ka hoʻohana ʻana i nā backends like ʻole no ka hoʻokō ʻana i nā kernels OpenCL ma nā ʻano kiʻi like ʻole a me ke kikowaena. nā mea hana. Hāʻawi ʻia ke code papahana ma lalo o ka laikini MIT. Kākoʻo i ka hana ma nā paepae X86_64, MIPS32, ARM v7, AMD HSA APU, NVIDIA GPU a me nā mea hana ASIP kūikawā (Application-Specific Instruction-set Processor) a me TTA (Transport Triggered Architecture) me ka hoʻolālā VLIW.

Kūkulu ʻia ka hoʻokō ʻana o ka OpenCL kernel compiler ma ke kumu o LLVM, a ua hoʻohana ʻia ʻo Clang ma ke ʻano mua no OpenCL C. No ka hōʻoia ʻana i ka portability kūpono a me ka hana, hiki i ka OpenCL kernel compiler ke hana i nā hana hui e hiki ke hoʻohana i nā kumuwaiwai like ʻole e hoʻohālikelike i ka hoʻokō code, e like me VLIW, superscalar, SIMD, SIMT, multi-core a me multi-threading. Aia ke kākoʻo no nā mea hoʻokele ICD (Installable Client Driver). Aia nā backends e kākoʻo i ka hana ma o CPU, ASIP (TCE/TTA), GPU e pili ana i ka hoʻolālā HSA a me NVIDIA GPU (ma libcuda).

Ma ka mana hou:

  • Hoʻohui kākoʻo no Clang/LLVM 15.0.
  • Hoʻomaikaʻi nui ʻia ke kākoʻo kikowaena SPIR-V shader no nā mea hoʻokele CPU a me CUDA.
  • Ua hoʻolālā hou ʻia ka mea hoʻokele no nā lako lako kūikawā (CL_DEVICE_TYPE_ACCELERATOR) a me nā mea hana maʻamau (CL_DEVICE_TYPE_CUSTOM) ʻaʻole i kākoʻo i ka hōʻuluʻulu pūnaewele. Ua hoʻohui ʻia nā mea hoʻokele accel a me ttasim i ka mea hoʻokele AlmaIF hou.
  • Ke hoʻomau nei ka hana ma ka mea hoʻokele no ka API kiʻi Vulkan.
  • Hoʻokumu ʻia kahi hoʻokō kumu o ka hoʻonui ʻia cl_khr_command_buffer, kahi e hiki ai iā ʻoe ke kākau i kahi ʻano o nā kauoha OpenCL no ka hoʻokō ʻana i hoʻokahi kelepona.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka