Pocl

Jul 20, 2023

POrtable Computing Language (POCL)

[ type install message «EOM Portable OpenCL pocl ———————-

Portable OpenCL >= 3.0 aims to be an efficient open source MIT-licensed implementation of the OpenCL 2.X standard with adaptions of OpenCL 3.0.

In addition to producing an easily portable open source OpenCL implementation, another major goal of the project is improving performance portability of OpenCL programs with compiler optimizations, reducing the need for target-dependent manual optimizations. At the core of pocl is a set of LLVM passes used to statically parallelize multiple work-items with the kernel compiler, even in the presence of work-group barriers. This enables parallelization of the fine-grained static concurrency in the work groups in multiple ways SIMD, VLIW, superscalar,….

The code base is modularized to allow easy adding of new “device drivers” in the host-device layer. A generic multithreaded “target driver” is included. It allows running OpenCL applications on a host that supports the pthread library with multithreading at the work group granularity.

EOM

]



Checkout these related ports:
  • Zig - Language designed for robustness, optimality, and maintainability
  • Zephir - Zephir is a transpiled language used for creating C-extensions for PHP
  • Ypsilon - Scheme implementation for real-time applications
  • Yorick - Interpreted language for scientific simulations
  • Yap - High-performance Prolog compiler
  • Yap-devel - High-performance Prolog compiler
  • Yabasic - Yet another Basic for Unix and Windows
  • Voc - Vishap Oberon Compiler for Oberon-2
  • Vala - Programming language and compiler that converts Vala code into C code
  • V8 - Open source JavaScript engine by Google
  • V8-beta - Open source JavaScript engine by Google
  • V - V Programming Language
  • Urweb - Ultimate host for embedded domain-specific languages
  • Ucc - C Compiler Which Implements the ANSI C89 Standard
  • Twelf - Meta-logical framework for deductive systems