JavaCL v1.0.0 RC3 is available!

Download / Install   Browse JavaDoc   Getting Started (Tutorial)   Discuss

JavaCL is a BSD-licensed library that lets you use OpenCL from Java, in order to run massively-parallel computations on your graphic card (and/or CPU).

Release Notes

Here are the main changes between 1.0.0-RC2 and 1.0.0-RC3 (see full change log) :

  • Fixed byte order hack for ATI platforms
  • Fixes / optimized event callbacks (but broke API: CLEvent.EventCallback now only takes the completion status as argument, not the event anymore)
  • Fixed library probe
  • Fixed handling of image2d_t and image3d_t in Maven plugin (contrib. from Remi Emonet, request #308 and issue #307)
  • Fixed OpenGL interop on Windows (issue #312)
  • Fixed error about mismatching byte order for byte buffers, and replaced mentions to getKernelsDefaultByteOrder() by getByteOrder() (issue #336)
  • Fixed AMD App 2.7 Linux library loading code for
  • Fixed AMD download link in demos.
  • Added CLEvent.FIRE_AND_FORGET to avoid returning events from all the methods that accept a vararg eventsToWaitFor.
  • Added naive OSGi support to the main JAR.
  • Added list of devices in program errors.
  • Added CLBuffer.allocateCompatibleMemory(CLDevice)
  • Added client properties to CLContext (lazy + concurrent)
  • Optimized low-level bindings on OpenCL 1.1+ platforms, with dynamic runtime switch (removed synchronized keyword from all native calls), and made OpenCL 1.0 synchronization a warning.
  • Enhanced CLDevice.toString (include platform name)
  • Deprecated CLKernel.enqueueNDRange with int[] parameters
  • Return CLUserEvent from CLContext.createUserEvent();

Getting started

You can read the Getting Started (Tutorial) page on the wiki to get started very quickly !

Please join the NativeLibs4Java Google Group to discuss JavaCL / ScalaCL, get the latest news and ask for support from the growing JavaCL community.