Skip to content

Releases: clEsperanto/pyclesperanto

0.22.0

Choose a tag to compare

@StRigaud StRigaud released this 07 Apr 17:41
d2b7093

New Backend support

clEsperanto now comes with support for CUDA 12 and Metal. While OpenCL remain the default backend, you can now install pyclesperanto with additional backend

pip install pyclesperanto          // only install opencl
pip install pyclesperanto[cuda]    // not available in MacOS
pip install pyclesperanto[metal]   // only available in MacOS
pip install pyclesperanto[all]     // install all possible configuration

and you can select and choose you backend at the start of the import:

import pyclesperanto as cle
cle.list_avaiable_backend()
>>> ['opencl', 'cuda']
cle.select_backend("cuda")

DLPack support

And now the Array object support DLPack which allows both way copy-free interoperability with other GPU library that uses same backend and support the same protocol (e.g. cupy, torch, ...)

import pyclesperanto as cle
import cupy as cp
cle.select_backend("cuda")
cp_array = cp.random.random((10,10), dtype=cp.float32)
cle_array = cle.from_dlpack(cp_array)

Degraded

This release came with a reshape of the project architecture to allow multiple backend to coexist. As a result, the conda-recipe in conda-forge is broken.

Full Changelog: 0.21.4...0.22.0

v0.21.4

Choose a tag to compare

@StRigaud StRigaud released this 17 Mar 15:58
272507a

Default pyclesperanto ship with OpenCL
Option pyclesperanto[cuda] or pyclesperanto[all] will now also provide CUDA as a backend (for unix and windows only!)

>>> import pyclesperanto as cle
>>> cle.list_available_backends()
['opencl', 'cuda']
>>> cle.select_backend("cuda")
>>> cle.get_device()
(CUDA) Tesla T4 (driver 13.0)
[...]

Full Changelog: 0.21.1...0.21.4

v0.21.1

Choose a tag to compare

@StRigaud StRigaud released this 16 Mar 15:17

Full Changelog: 0.21.0...0.21.1

v0.21.0

Choose a tag to compare

@StRigaud StRigaud released this 16 Mar 12:13
debf00a

Introducing multiple backend (#379)

  • Enable multiple backends from CLIc to coexists
    • pyclesperanto is now pure python
    • Hard dependency with pyclesperanto-opencl
    • Optional dependency with pyclesperanto-cuda

Updates and new functions (#363, #369, #381)

  • Provide evalueate() for quick elementwise arithmetic operation on arrays
  • Restructure tests organisation
  • Add new function for image processing (e.g. threshold_yen)

Documentation

Broken

  • This new version should break the conda recipe. Installation using pip is advised
pip install pyclesperanto
pip install pyclesperanto[all]  <- to test CUDA backend

Full Changelog: 0.19.0...0.21.0

v0.19.0

Choose a tag to compare

@StRigaud StRigaud released this 24 Oct 15:17
d715ee4

What's Changed

  • Update to CLIc@0.19.0 by @github-actions[bot] in #356

Full Changelog: 0.18.3...0.19.0

0.18.3

Choose a tag to compare

@StRigaud StRigaud released this 21 Aug 16:30
d1990e2

What's Changed

  • add a runtime-cache for program to avoid rebuild time and possible memory leak related to OpenCL drivers on MacOS

Full Changelog: 0.18.2...0.18.3

0.18.2

Choose a tag to compare

@StRigaud StRigaud released this 20 Aug 12:34
024d8b0

What's Changed

  • This patch fixes a memory leak at Buffer Allocation (more info here)

Full Changelog: 0.18.0...0.18.2

0.18.0

Choose a tag to compare

@StRigaud StRigaud released this 04 Jul 15:17
e8a0b32

What's Changed

See full changelog

Full Changelog: 0.17.1...0.18.0

0.17.1

Choose a tag to compare

@StRigaud StRigaud released this 13 May 16:40
28118c3

What's Changed

  • Update to CLIc@0.17.1 by @github-actions in #321

Full Changelog: 0.17.0...0.17.1

0.17.0

Choose a tag to compare

@StRigaud StRigaud released this 11 Apr 17:17

What's Changed

  • Introduce FFT operation adapted from clij2-fft
  • Add CLAHE filter
  • Fix minor issues

See Changelog for more information on this release

Full Changelog: 0.16.1...0.17.0