What's new in Portable Computing Language 0.10

Dec 9, 2014
  • Highlights:
  • Support for LLVM/Clang 3.5
  • Support for building using CMake (experimental with known issues).
  • Bugfixes:
  • TCE: kernel building was broken when running pocl from install location
  • thread-safety (as required since OpenCL 1.1) improved
  • Kernel compiler:
  • Final code generation now done via LLVM API calls instead of calling the llc binary.
  • Sensible linking of functions from the monolithic kernel built-in
  • library. Major compilation speedup for smaller kernels.
  • OpenCL C Builtin Function Implementations:
  • Improved support for halfN functions.
  • ilogb and ldexp available with vecmathlib
  • OpenCL Runtime/Platform API support:
  • Implement clCreateKernelsInProgram()
  • OpenCL-C shuffle() and shuffle2() implementation added
  • Device probing modified to allow for device driver to detect device during runtime. POCL_DEVICES still supported.
  • Checks in clSetKernelArgs() for argument validity
  • Checks in clEnqueueNDRange() for arguments to be all set
  • Implement clGetKernelArgInfo()
  • clEnqueueCopyImage()
  • Misc:
  • ViennaCL testsuite updated to 1.5.1

New in Portable Computing Language 0.9 (Jan 29, 2014)

  • improved host/target CPU detection and targeted code generation
  • kernel compiler implemented by default by LLVM API calls instead of scripts
  • improvements to the handling of CL Images
  • several kernel compiler improvements