Bot releases are hidden (Show)
Published by hvy almost 6 years ago
This is the release note of v6.0.0b1. See here for the complete list of solved issues and merged PRs.
ndarray.item
method (#1815)ElementwiseKernel
doesn't broadcast mutable in_params
(#1601)ndim
checking in Fusion (#1713)DropoutStates
interface to avoid using cuDNN handle (#1734)_make_rnn_workspace
function (#1838)cupy.fuse
(#1799)CUDA_PATH
environment variable (#1775)ndarray.nbytes
documentation (#1797)cupy.random.{get_set}_state
(#1805)cupyx
module (#1809, thanks @grafi-tt!)PendingDeprecationWarning
when running test against NumPy 1.15 (#1755)Published by niboshi almost 6 years ago
This is the release note of v5.1.0. See here for the complete list of solved issues and merged PRs.
scatter_add
(#1756, thanks @uchida!, #1763)_make_rnn_workspace
function (#1841)atomicAdd
(#1777)cupy.fuse
(#1801)PendingDeprecationWarning
when running test against NumPy 1.15 (#1762)CUDA_PATH
environment variable (#1783)ndarray.nbytes
documentation (#1798)cupy.random.{get_set}_state
(#1814)Published by kmaehashi almost 6 years ago
This is the release note of v6.0.0a1. See here for the complete list of solved issues and merged PRs.
cupy.random.*
); see the list below for details.astype
in fused functions (#1586)scatter_add
(#1707, #1684, thanks @uchida!)cupy.random.hypergeometric
(#1625)cupy.random.logistic
(#1626)cupy.random.logseries
(#1628)cupy.random.power
(#1629)cupy.random.rayleigh
(#1630)cupy.random.triangular
(#1631)cupy.random.wald
(#1632)cupy.random.weibull
(#1633)cupy.random.negative_binomial
(#1635)cupy.random.noncentral_chisquare
(#1637)cupy.random.noncentral_f
(#1637)ndimage
to support SciPy 1.0+ (#1606)atomicAdd
(#1706)nextafter
(#1665, thanks @toru-fukaya!)cupy.random.hypergeometric
(#1688)cupy.random.rand
to not generate 1 (#1701)ndarray.__iter__
to raise TypeError
correctly for 0-d arrays (#1697)solve
(#1524, #1674 thanks @boeddeker!)cupy.linalg.slogdet
(#1667, thanks @fiarabbit!)cupy.random
(#1685)-ftz=true
affects nextafter
(#1717)test_nextafter_combination
(#1687)cupy.random
tests (#1677)cupy.random
tests (#1679)TestRandintDtype
was slow (#1682)Published by beam2d almost 6 years ago
This is the release note of v5.0.0. See here for the complete list of solved issues and merged PRs.
This release note only covers the difference from v5.0.0rc1; for all highlights and changes, please refer to the release notes of the pre-releases:
See the Upgrade Guide if you are upgrading from previous versions.
astype
in fused functions (#1705)nextafter
(#1676, thanks @toru-fukaya!)cupy.random.rand
to not generate 1 (#1710)ndarray.__iter__
to raise TypeError
correctly for 0-d arrays (#1699)cupy.linalg.slogdet
(#1671, thanks @fiarabbit!)-ftz=true
affects nextafter
(#1730)TestRandintDtype
was slow (#1693)cupy.random
tests (#1712)Published by beam2d about 6 years ago
These are the release notes for v5.0.0rc1. See here for the complete list of solved issues and merged PRs.
cbrt
(#1559)nan_to_num
(#1562)erf
, erfc
, and erfcx
to cupyx
(#1570)ndtr
(#1571)erfinv
and erfcinv
(#1590)eigh
and svd
(#1518, thanks @infrub!)cupy.cublas.dgetrfBatched
(#1608)cupy.cublas.dgetriBatched
(#1617)cudnn.pyx
to up speed (#1378)take
function (#1505)core.pyx
to improve maintainability (#1550)ElementwiseKernel
emit immutable in_params
(#1554)strides
option in cupy.ndarray
(#1611)getDropoutReserveSpaceSize
(#919, #1344)cupy.random.standard_exponential
bug (#1642)random.exponential
(#1649)my_sum
to my_add
in docs (#1612)scipy.special
to use it in test (#1568)assertIsNone
in test_interpolation.py
(#1587)erfinv
(#1646)Published by mitmul about 6 years ago
This is the release note of v4.5.0. See here for the complete list of solved issues and merged PRs.
This stable update adds scipy 1.0+ support.
Published by kmaehashi about 6 years ago
This is the release note of v4.4.1. See here for the complete list of solved issues and merged PRs.
This is a hot-fix release for v4.4.0 to address the issue reported in #1579 (thanks @BobLiu20 for reporting this!). Users calling CuPy functions on non-main threads may have been affected by this issue.
Published by beam2d about 6 years ago
This is the release note of v5.0.0b4. See here for the complete list of solved issues and merged PRs.
__cuda_array_interface__
, which is the CUDA array interchange interface compatible with Numba>=0.39.0. It means you can now pass CuPy arrays to kernels JITed with Numba. The folowing is a simple example code borrowed from numba/numba#2860:import cupy
from numba import cuda
@cuda.jit
def add(x, y, out):
start = cuda.grid(1)
stride = cuda.gridsize(1)
for i in range(start, x.shape[0], stride):
out[i] = x[i] + y[i]
a = cupy.arange(10)
b = a * 2
out = cupy.zeros_like(a)
print(out) # => [0 0 0 0 0 0 0 0 0 0]
add[1, 32](a, b, out)
print(out) # => [ 0 3 6 9 12 15 18 21 24 27]
cumsum
and cumprod
to ndarray
.cupy.allclose
__cuda_array_interface__
(#1144, thanks @seibert!)<t>tpttr
and <t>trttp
of cuBLAS (#1492)cumsum
and cumprod
to ndarray
(#1500)cupyx.scipy.get_array_module
(#1513)cupy.allclose
(#1522, thanks @tsurumeso!)mem_info
to Device
(#1538, thanks @larsoner!)Device
object in Memory
and MemoryPointer
(#946)ndarray.__iter__
(#1449)cupy.sparse
to cupyx.scipy.sparse
(#1451)array_split
(#1454)collections.sequence
(#1456)l
to follow pep8 (#1460)nonzero
function (#1487)nonzero
for complex types (#1501)collections.abc
to avoid DeprecationWarning in Python 3.7 (#1515)loop_prep
in ufunc (#1537)_has_memory_hooks
to avoid thread local dictionary operation (#1540)fill
function (#1541)core.pyx
(#1548)cython.no_gc
to avoid memory leak (#1463)cupy.random.dirichlet
to behave same as numpy.random.dirichlet
(#1468)cupy.real
and cupy.imag
(#1504)create_comparison
(#1551)out_params
in ElementwiseKernel (#1552)cupyx
namespaces (#1467)free_all_free
(#1519)Published by kmaehashi about 6 years ago
This is the release note of v4.4.0. See here for the complete list of solved issues and merged PRs.
divmod
function to cupy
namespace (#1480)collections.sequence
(#1472)array_split
(#1475)l
to follow pep8 (#1479)ElementwiseKernel
(#1482)ElementwiseKernel
launch (#1488)cupy.get_array_module
take fusion parameters (#1498)collections.abc
to avoid DeprecationWarning in Python 3.7 (#1517)cython.no_gc
to avoid memory leak (#1474)create_comparison
(#1553)out_params
in ElementwiseKernel
(#1556)cupyx
namespaces (#1496).pytest_cache/
to .gitignore
(#1530)Published by niboshi over 6 years ago
This is the release note of v5.0.0b3. See here for the complete list of solved issues and merged PRs.
cupyx.scipy
namespace has been introduced to provide SciPy-compatible APIs for CuPy ndarrays. cupy.sparse
module has been renamed to cupyx.scipy.sparse
; cupy.sparse
is kept for backward compatibility.
New user-defined kernel class called cupy.RawKernel
has been added. By using raw kernels, you can define kernels from raw CUDA source. See the documentation for details.
cupyx.scipy.linalg.solve_triangular
(#1383)RawKernel
(#1398)reduce_dims
for speed up (#1324)creation/basic.py
(#1342)cupy.cov
for degrees of freedom <= 0 (#1370, thanks @tsurumeso!)Fusion
class (#1382)cupy.random.RandomState.interval
private (#1430)get_cublas_handle
to reduce creation of Device
object (#1440)stream
option from RawKernel
and add missing docs of arguments in ReductionKernel
(#1444)cupy.get_array_module
to take fusion parameters (#1446)internal.clp2
in reduction (#1448)Module
and LinkState
not freed (#1439)fromDlpack
memory management (#1445, thanks @t-vi!)PooledMemory
in Python 3.7 (#1457)option
arg of ElementwiseKernel
(#1437)cupy.sparse
to cupyx.scipy.sparse
in docstrings (#1450)test_einsum.py
(#1400)TestOrder
(#1405)Published by beam2d over 6 years ago
This is the release note of v4.3.0. See here for the complete list of solved issues and merged PRs.
reduce_dims
for speed up (#1424)creation/basic.py
(#1425)Module
and LinkState
not freed (#1441)PooledMemory
in Python 3.7 (#1462)option
arg of ElementwiseKernel
(#1438)TestOrder
(#1408)Published by hvy over 6 years ago
This is the release note of v4.2.0. See here for the complete list of solved issues and merged PRs.
cupy.diag
failures for array-likes objects other than CuPy arrays (#1235, thanks @hyabe!)cupy.diag
function (#1337)cupy.linalg.norm
(#1376)'f'
and 'c'
in the order
option of ndarray (#1390)cupy.matmul
when inputs contain zero-sized array(s) (#1238)cupy.full
(#1257)cupy.sum
and cupy.prod
(#1259)sort
, lexsort
, and argsort
catch C++ exceptions from Thrust (#1290)view
of zero-dim ndarray (#1291)real
and imag
of zero-dim ndarray (#1292)cupy.expm1
, cupy.log1p
, cupy.log2
for complex type (#1293)cupy.math.misc
to support complex types (#1297)cupy.math.misc
to support complex types (#1298)OutOfMemoryError
raised even when there are sufficient large freeable chunks (#1301, thanks @hyabe!)astype
for complex dtypes (#1302)real
, imag
of non-contiguous complex ndarray (#1306)cupy.zeros
and cupy.zeros_like
(#1360)imp.load_source
in setup.py (#1332, thanks @vilyaair!)_multiprocess_can_split_
(#1267)Published by niboshi over 6 years ago
This is the release note of v5.0.0b2. See here for the complete list of solved issues and merged PRs.
cupy.ndarray
and DLPack tensor using array.toDlpack()
and cupy.fromDlpack(tensor)
. See the documentation for details.__array_ufunc__
protocol to improve interoperability with NumPy. It makes NumPy ufuncs applicable to CuPy ndarrays directly (for example, numpy.exp(cupy.ones(3))
will call cupy.exp
to compute the exponential, and return CuPy ndarray).cupy.linalg.matrix_power
, cupy.random.laplace
, cupy.corrcoef
, cupy.cov
, cupy.i0
, cupy.sinc
, cupyx.scipy.special.*
and more.cupy.einsum
has been rewritten to use cuBLAS. This significantly reduces the memory usage and also improves the performance.cupy.corrcoef
and cupy.cov
(#1110, thanks @tsurumeso!)__array_ufunc__
(#1247, thanks @martindurant!)laplace
(#1321)cupy.linalg.matrix_power
(#1374, thanks @ericmjl!)ElementwiseKernel
(#725)diag
function (#1129)linalg.matrix_rank
casting for Windows (#1217)cupy.einsum
(#1218)divmod
function to cupy
namespace (#1286)cupy_stdint.h
(#1361)'f'
and 'c'
in the order
option of ndarray (#1385)OutOfMemoryError
raised even when there are sufficient large freeable chunks (#1256, thanks @hyabe!)astype
for complex dtypes (#1279)real
and imag
for zero-dim arrays (#1280)expm1
, log1p
, log2
for complex type (#1283)real
, imag
of non-contiguous complex arrays (#1303)rint
syntax error (#1311)einsum
test for NumPy versions with broken einsum (#1334)LICENSE
file (#1325)zeros
and zeros_like
(#1357)setup.py
(#1121)imp.load_source
in setup.py
(#1329, thanks @vilyaair!)Published by niboshi over 6 years ago
This is the release note of v4.1.0. See here for the complete list of solved issues and merged PRs.
cufftMakePlan1d
cannot allocate memory (#1236)CuFftError
to CuFFTError
(#1244)einsum
to match empty input subscript (#1186)cupy.power
against complex dtype (#1187)real
and imag
test for bool
to pass on Windows (#1192)int8.max
test on Windows due to NumPy bug (#1193)hacking
version (#1229).gitignore
to exclude .pyd
files (#1227)Published by beam2d over 6 years ago
This is the release notes of v5.0.0b1. See here for the complete list of solved issues and merged PRs.
We started to provide wheels for Python 3.6 on Windows. Currently this is considered as experimental, and we'd love to hear your feedback. See Installation Guide for details.
cupy.random.permutation
and numpy.random.permutation
. (#1138)unique
(#1140)cupy.average
(#1180)cupy.linalg.norm
(#875)fuse
(#1090)cupy.diag()
fails for array-likes other than CuPy arrays (#1124, thanks @hyabe!)cufftMakePlan1d
cannot allocate memory (#1219)CuFftError
to CuFFTError
(#1234)einsum
to match empty input subscript (#1181)matmul
when inputs contain zero-sized array (#1231)dtype
option of sum
and prod
(#1239)int8.max
test on Windows due to NumPy bug (#1171)real
and imag
test for bool
to pass on Windows (#1173)cupy.power
against complex dtypes (#1174).coveragerc
(#1210)_multiprocess_can_split_
(#1220)hacking
version (#1228).gitignore
to exclude .pyd
files (#1215)Published by kmaehashi over 6 years ago
This is the major release of CuPy v4.0.0. All of the updates since the previous major version (v2.5.0) can be found in the release notes below:
$ pip install cupy-cuda80
$ pip install cupy-cuda90
$ pip install cupy-cuda91
If you already have an old version of CuPy installed, first uninstall it before installing a wheel package. Note that these packages also include binaries of cuDNN and NCCL, so you do not need to place it by yourself.
See the Upgrade Guide for users of migrating from CuPy v2 to v4.
Updates from the release candidate are as follows.
cupy.show_config
and cupyx.get_runtime_info
(#1120)cupy.show_config()
(#1135)cupyx.runtime
(#1151)diagflat
fail if argument is not cupy.ndarray (#1058)EigMode
in cuSPARSE (#1111)a.real
and a.imag
to return view (#1113)cupy.concatenate
to support arrays with >= 2**31 elements (#1115)cudaError_t
(#1145)cupy.linalg.inv()
breaks its argument (#1154, thanks @hyabe!)chainer.backends.cuda
(#1050)for_unsigned_dtypes
(#1081)cupy.tensordot
(#1103)cupy/indexing/generate.py
(#1146)r_
and c_
(#1149)MemoryHook
(#1150)--no-cache-dir
in Dockerfile (#1061)Published by niboshi over 6 years ago
This is the release note of v5.0.0a1. See here for the complete list of solved issues and merged PRs.
cupy.pad
(#1040, thanks @wkentaro!)histogram
(#1049, thanks @IshitaTakeshi!)cupy.show_config
and cupyx.get_runtime_info
(#1067)atomicAdd
on Maxwell or older GPUs (#1071, thanks @anaruse!)cupy.show_config()
(#1132)cupyx.runtime
(#1136)moveaxis
bug (#1023, thanks @fukatani!)diagflat
to fail if argument is not cupy.ndarray
(#1036)ndarray.real
and ndarray.imag
to return view (#1089)cupy.concatenate
to support arrays with >= 2**31 elements (#1101)cudaError_t
(#1112)cupy.linalg.inv()
breaks its argument (#1123, thanks @hyabe!)cusolverSpSetStream
for cuSolverSP
library calls (#1152)chainer.backends.cuda
(#1047)cupy.tensordot
(#1069)for_unsigned_dtypes
(#1076)ndimage
(#1131)r_
and c_
(#1142)MemoryHook
(#1143)--no-cache-dir
in Dockerfile (#1060)CUDA_PATH
to RPATH
in wheels (#1065)import matplotlib
to set its backend Agg (#976)Published by hvy over 6 years ago
This is the release candidate of v4. See here for the complete list of solved issues and merged PRs.
cupy-cuda91
is also available from this release. You can install it with pip install cupy-cuda91
.solve
(#845)cupyx.rsqrt
(#846)destroy
method to NcclCommunicator
(#975)__setitem__
in fusion function (#1002)ndarray.diagonal
to accept appropriate argument of axis2
(#978, thanks @ronekko!)eliminate_zeros
(#998)input_num
is given (#1020)cupy.copyto
ignore where argument when src is scalar (#1028)carray.cuh
(#870)ReductionKernel
(#874, thanks @grafi-tt!)nogil
in FFT (#950)group
argument name of create_convolution_descriptor
(#988)_scatter_op
(#989)CUDNN_BN_MIN_EPSILON
from cudnn.h
(#1011)pip
in documentation (#985)scatter_add
docs (#1025)numpy.sum
(#1039)Published by niboshi over 6 years ago
This is the release note of v2.5.0. See here for the complete list of solved issues and merged PRs.
linalg.norm
when its input is complex (#869, thanks @kohr-h!)ndarray.diagonal
to accept an appropriate argument of axis2
(#992, thanks @ronekko!)NULL
from values returned from NVRTC (#1033)cupy.copyto
to ignore where
argument when src
is scalar (#1035)pip
in documentation (#1031)sum
test to avoid contiguousness difference between CuPy and NumPy (#995)Published by hvy over 6 years ago
This is the release of v4.0.0b4. See here for the complete list of solved issues and merged PRs.
Starting from this release, CuPy supports wheel packages. The packages have different names depending on the CUDA versions. Installation is much faster with wheel packages than with the conventional installation from source.
To install CuPy from a wheel package, first uninstall the existing CuPy if you have, and then type the following command with appropriate CUDA version.
$ pip install --pre cupy-cuda80
$ # or
$ pip install --pre cupy-cuda90
Note: the wheel packages include cuDNN and NCCL2 binaries. These included binaries are automatically used by CuPy instead of those prepared by yourselves.
isclose
(#825)cupyx
namespace (#894)
cupy.scatter_add
is marked as deprecated. Use cupyx.scatter_add
instead.iscomplex
, iscomplexobj
, isfortran
, isreal
, isrealobj
(#904)free_all_blocks
interface (#918)__getitem__
and __setitem__
(#724)cupy.partition
performance (#763)cupy.matmul
and cupy.einsum
(#921, thanks @hknerdgn!)cupy.cufft
to internal functions of cupy.fft.fft
(#924)cublas*gemmStridedBatched
APIs in matmul (#930, thanks @anaruse!)__dealloc__
in memory object (#934)cupy.fft
(#951)cupy.core.fusion
(#960)concatenate
bug and improve performance (#747)CUDNN_ACTIVATION_ELU
(#959)--cupy-long-description
option to inject long description for wheels (#953)rand
/randn
with examples (#908)nestead
-> nested
(#943, thanks @rcalland!)CUDNN_ACTIVATION_ELU
(#959)