Lanzamento de PoCL 1.4, unha implementación independente do estándar OpenCL

Dispoñible lanzamento do proxecto PoCL 1.4 (Portable Computing Language OpenCL), que desenvolve unha implementación do estándar OpenCL que é independente dos fabricantes de aceleradores gráficos e permite o uso de varios backends para executar núcleos OpenCL en diferentes tipos de gráficos e procesadores centrais. Código do proxecto distribuído por baixo licenza MIT. Admite o traballo en plataformas X86_64, MIPS32, ARM v7, AMD HSA APU e varios procesadores TTA especializados (Arquitectura desencadeada por transporte) coa arquitectura VLIW.

A implementación do compilador do núcleo OpenCL está construída sobre a base de LLVM, e Clang úsase como interface para OpenCL C. Para garantir a portabilidade e o rendemento axeitados, o compilador do núcleo OpenCL pode xerar funcións combinadas que poden usar varios recursos de hardware para paralelizar a execución de código, como VLIW, superescalar, SIMD, SIMT, multi-core e multi-threading. Soporte de controlador ICD dispoñible
(Controlador de cliente instalable). Hai backends para garantir o funcionamento mediante CPU, ASIP (TCE/TTA), arquitectura baseada en GPU Hsa e GPU NVIDIA (CUDA).

В nova versión:

  • Soporte engadido LLVM/Clang 9.0. O soporte para versións de LLVM anteriores á 6.0 descontinuouse.
  • Implementación mellorada baseada na CPU de representacións de código intermedio SPIR и SPIR-V (usado na API de Vulkan), que se pode usar tanto para representar sombreadores para gráficos como para computación paralela;
  • Engadiuse o controlador pocl-accel cunha infraestrutura de exemplo para admitir os aceleradores de hardware OpenCL 1.2 que implementan unha interface de control mapeada en memoria (mmap);
  • Engadida a posibilidade de construír instalacións de pocl que non estean vinculadas a directorios (relocables).

Fonte: opennet.ru

Engadir un comentario