https://github.com/xarray-contrib/cupy-xarray
Interface for using cupy in xarray, providing convenience accessors.
https://github.com/xarray-contrib/cupy-xarray
cupy python xarray
Last synced: 11 months ago
JSON representation
Interface for using cupy in xarray, providing convenience accessors.
- Host: GitHub
- URL: https://github.com/xarray-contrib/cupy-xarray
- Owner: xarray-contrib
- License: apache-2.0
- Created: 2020-07-22T15:33:48.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-03-21T22:49:52.000Z (11 months ago)
- Last Synced: 2025-03-28T23:38:06.902Z (11 months ago)
- Topics: cupy, python, xarray
- Language: Python
- Homepage: https://cupy-xarray.readthedocs.io
- Size: 260 KB
- Stars: 74
- Watchers: 6
- Forks: 16
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# cupy-xarray
> [!IMPORTANT]
> ⚠️ This project is looking for maintainers and contributors. Come help out!

[](https://results.pre-commit.ci/latest/github/xarray-contrib/cupy-xarray/main)
[](https://cupy-xarray.readthedocs.io)
[](https://pypi.org/project/cupy-xarray/)
[](https://anaconda.org/conda-forge/cupy-xarray)
[](https://science.nasa.gov/open-science-overview)
Interface for using cupy in xarray, providing convenience accessors.
## Installation
> `cupy-xarray` will use an existing cupy installation, hence cupy needs to be installed manually! Please follow cupy's install instructions at .
From anaconda:
```console
conda install cupy-xarray -c conda-forge
```
From PyPI:
```console
pip install cupy-xarray
```
The latest version from Github:
```console
pip install git+https://github.com/xarray-contrib/cupy-xarray.git
```
## Usage
```python
import xarray as xr
import cupy_xarray # This registers the `DataSet.cupy` and `DataArray.cupy` namespaces but is not used directly
ds = xr.tutorial.load_dataset("air_temperature.nc")
type(ds.air.data) # numpy.ndarray
%timeit ds.air.mean() # 8.56 ms ± 15.6 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
ds = ds.cupy.as_cupy() # Also available via convenience method ds.as_cupy()
type(ds.air.data) # cupy.core.core.ndarray
%timeit ds.air.mean() # 2.14 ms ± 21.4 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
ds = ds.as_numpy()
type(ds.air.data) # numpy.ndarray
```