Dpctl

Latest version: v0.16.0

Safety actively analyzes 630026 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 6

0.16.0

This release will require DPC++ 2024.1.0, which no longer supports Intel Gen9 integrated GPUs found in Intel CPUs of 10th generation and older.
Featurewise, this release is identical to 0.15.1.

0.15.1

This release reaches milestone of 100% compliance of `dpctl.tensor` functions with Python Array API 2022.12 standard for the main namespace.

Added

* Added reduction functions `dpctl.tensor.min`, `dpctl.tensor.max`, `dpctl.tensor.argmin`, `dpctl.tensor.argmax`, and `dpctl.tensor.prod` per Python Array API specifications: [1399](https://github.com/IntelPython/dpctl/pull/1399)
* Added dedicated in-place operations for binary elementwise operations and deployed them in Python operators of `dpctl.tensor.usm_ndarray` type: [1431](https://github.com/IntelPython/dpctl/pull/1431), [#1447](https://github.com/IntelPython/dpctl/pull/1447)
* Added new elementwise functions `dpctl.tensor.cbrt`, `dpctl.tensor.rsqrt`, `dpctl.tensor.exp2`, `dpctl.tensor.copysign`, `dpctl.tensor.angle`, and `dpctl.tensor.reciprocal`: [1443](https://github.com/IntelPython/dpctl/pull/1443), [#1474](https://github.com/IntelPython/dpctl/pull/1474)
* Added statistical functions `dpctl.tensor.mean`, `dpctl.tensor.std`, `dpctl.tensor.var` per Python Array API specifications: [1465](https://github.com/IntelPython/dpctl/pull/1465)
* Added sorting functions `dpctl.tensor.sort` and `dpctl.tensor.argsort`, and set functions `dpctl.tensor.unique_values`, `dpctl.tensor.unique_counts`, `dpctl.tensor.unique_inverse`, `dpctl.tensor.unique_all`: [1483](https://github.com/IntelPython/dpctl/pull/1483)
* Added linear algebra functions from the Array API namespace `dpctl.tensor.matrix_transpose`, `dpctl.tensor.matmul`, `dpctl.tensor.vecdot`, and `dpctl.tensor.tensordot`: [1490](https://github.com/IntelPython/dpctl/pull/1490), [#1525](https://github.com/IntelPython/dpctl/pull/1525), [#1541](https://github.com/IntelPython/dpctl/pull/1541)
* Added `dpctl.tensor.clip` function: [1444](https://github.com/IntelPython/dpctl/pull/1444), [#1505](https://github.com/IntelPython/dpctl/pull/1505)
* Added custom reduction functions `dpt.logsumexp` (reduction using binary function `dpctl.tensor.logaddexp`), `dpt.reduce_hypot` (reduction using binary function `dpctl.tensor.hypot`): [1446](https://github.com/IntelPython/dpctl/pull/1446)
* Added inspection API to query capabilities of Python Array API specification implementation: [1469](https://github.com/IntelPython/dpctl/pull/1469)
* Support for compilation for NVIDIA(R) sycl target with use of [CodePlay oneAPI plug-in](https://developer.codeplay.com/products/oneapi/nvidia/home/): [#1411](https://github.com/IntelPython/dpctl/pull/1411), [#1124](https://github.com/IntelPython/dpctl/discussions/1124)
* Added `dpctl.utils.intel_device_info` function to query additional information about Intel(R) GPU devices: [gh-1428](https://github.com/IntelPython/dpctl/pull/1428) and [gh-1445](https://github.com/IntelPython/dpctl/pull/1445)
* Added support for two new device descriptors, `dpctl.SyclDevice.max_mem_alloc_size` and `dpctl.SyclDevice.max_clock_frequency`: [1530](https://github.com/IntelPython/dpctl/pull/1530)

Changed

* Functions `dpctl.tensor.result_type` and `dpctl.tensor.can_cast` became device-aware: [1488](https://github.com/IntelPython/dpctl/pull/1488), [#1473](https://github.com/IntelPython/dpctl/pull/1473)
* Implementation of method `dpctl.SyclEvent.wait_for` changed to use ``sycl::event::wait`` instead of ``sycl::event::wait_and_throw``: [gh-1436](https://github.com/IntelPython/dpctl/pull/1436)
* `dpctl.tensor.astype` was changed to support `device` keyword as per Python Array API specification: [1511](https://github.com/IntelPython/dpctl/pull/1511)
* C++ header files in `libtensor/include/kernels` containing implementations of SYCL kernels no longer depends on "pybind11.h": [1516](https://github.com/IntelPython/dpctl/pull/1516)

Fixed

* Fixed issues with `dpctl.tensor.repeat` support for `axis` keyword: [1427](https://github.com/IntelPython/dpctl/pull/1427), [#1433](https://github.com/IntelPython/dpctl/pull/1433)
* Fix for gh-1503 for bug `usm_ndarray.__setitem__`: [1504](https://github.com/IntelPython/dpctl/pull/1504)
* Other bug fixes: [1485](https://github.com/IntelPython/dpctl/pull/1485), [#1477](https://github.com/IntelPython/dpctl/pull/1477), [#1512](https://github.com/IntelPython/dpctl/pull/1512)

0.15.0

Added

* Added `dpctl.tensor.floor`, `dpctl.tensor.ceil`, `dpctl.tensor.trunc` elementwise functions.
* Added `dpctl.tensor.hypot`, `dpctl.tensor.logaddexp` elementwise functions.
* Added trigonometric (`dpctl.tensor.sin`, `dpctl.tensor.cos`, `dpctl.tensor.tan`) and hyperbolic (`dpctl.tensor.sinh`, `dpctl.tensor.cosh`, `dpctl.tensor.tanh`) elementwise functions and their inverses (`dpctl.tensor.asin`, `dpctl.tensor.asinh`, `dpctl.tensor.acos`, `dpctl.tensor.acosh`, `dpctl.tensor.atan`, `dpctl.tensor.atanh`).
* Added `dpctl.tensor.round` function.
* Added `dpctl.tensor.sign` and `dpctl.tensor.remainder` elementwise functions.
* Added bitwise elementwise functions `dpctl.tensor.bitwise_and`, `dpctl.tensor.bitwise_xor`, `dpctl.tensor.bitwise_or`, `dpctl.tensor.bitwise_invert`
* Added bitwise shift functions `dpctl.tensor.bitwise_left_shift` and `dpctl.tensor.bitwise_right_shift`.
* Added `dpctl.tensor.atan2` and `dpctl.tensor.signbit` elementwise functions.
* Added `dpctl.tensor.minumum` and `dpctl.tensor.maximum` binary elementwise functions.
* Supported equality checking and hashing for `dpctl.SyclPlatform`.
* Implemented `types` property for all unary and binary elementwise functions [1361](https://github.com/IntelPython/dpctl/pull/1361)
* Added `dpctl.tensor.repeat` and `dpctl.tensor.tile` functions.
* Added `dpctl.tensor.matrix_transpose ` function.

Changed

* Enabled support for Python arithmetic, in-place arithmetic, reflexive arithmetic, comparison, and bitwise operators for `dpctl.tensor.usm_ndarray` type [1324](https://github.com/IntelPython/dpctl/pull/1324).
* Removed `dpctl.tensor.numpy_usm_shared` obsolete class and associated tests which were being skipped [1310](https://github.com/IntelPython/dpctl/pull/1310)
* Transitioned `dpctl` codebase to Cython 3.
* Improved performance of boolean reduction functions `dpctl.tensor.all` and `dpctl.tensor.any`.
* Improved performance of summation function `dpctl.tensor.sum`.
* Improved in-place arithmetic operations for addition, subtraction and multiplication.
* Updated codebase per SYCL-2020 intel/llvm compiler deprecation warnings.
* Improved performance of advanced boolean indexing for arrays whose size fits in 32-bit signed integer type.
* Removed deprecated `DPCTLDevice_GetMaxWorkItemSizes` function from the SyclInterface library.
* Improved performance of `dpctl.tensor.reshape` in the case when a copy is being made.
* Improved performance of `dpctl.tensor.roll` function.

Fixed

* Fixed issues identified by Coverity security scans.
* Fixed issues [1279](https://github.com/IntelPython/dpctl/issues/1279), [#1350](https://github.com/IntelPython/dpctl/issues/1350), [#1344](https://github.com/IntelPython/dpctl/issues/1344), [#1327](https://github.com/IntelPython/dpctl/issues/1327), [#1241](https://github.com/IntelPython/dpctl/issues/1241), [#1250](https://github.com/IntelPython/dpctl/issues/1250), [#1293](https://github.com/IntelPython/dpctl/issues/1293).

0.14.5

Added

* Added `dpctl.tensor.log2` and `dpctl.tensor.log10`: [1267](https://github.com/IntelPython/dpctl/pull/1267)
* Added `dpctl.tensor.negative`, `dpctl.tensor.positive`, `dpctl.tensor.square` [1268](https://github.com/IntelPython/dpctl/pull/1268)
* Added `dpctl.tensor.logical_not`, `dpctl.tensor.logical_and`, `dpctl.tensor.logical_or`, `dpctl.tensor.logical_xor` [1270](https://github.com/IntelPython/dpctl/pull/1270)

Changed

* `dpctl.tensor.astype` behavior for `newdtype=None` changes [1261](https://github.com/IntelPython/dpctl/pull/1262)
* `dpctl.tensor.usm_ndaray` constructor default value of `dtype` keyword argument changed to `None`: [1265](https://github.com/IntelPython/dpctl/pull/1265)
* Support for `out` arguments that overlap with inputs for unary elementwise functions[1281](https://github.com/IntelPython/dpctl/pull/1281)
* Copying from one array to another a no-op if both arrays view into the same memory [1284](https://github.com/IntelPython/dpctl/pull/1284)

0.14.4

Added

* Added `dpctl.tensor.less_equal`, `dpctl.tensor.greater`, `dpctl.tensor.greater_equal`: [1239](https://github.com/IntelPython/dpctl/pull/1239)

Changed

* Optimized in-place arithmetic operations for updating matrix with rows/columns via broadcasting: [1244](https://github.com/IntelPython/dpctl/pull/1244)

Fixed

* Fixed handling of 0d arrays in `dpctl.tensor.sum`: [1238](https://github.com/IntelPython/dpctl/pull/1238)

0.14.3

Added

* Added support of `axis=None` in `dpctl.tensor.concat` [1125](https://github.com/IntelPython/dpctl/pull/1125)
* Added caching for `dpctl.SyclDevice.filter_string` property [1127](https://github.com/IntelPython/dpctl/pull/1127)
* Added `dpctl.tensor.isdtype` from array API [1133](https://github.com/IntelPython/dpctl/pull/1133)
* Added `dpctl.tensor.unstack`, `dpctl.tensor.moveaxis`, `dpctl.tensor.swapaxes` [1137](https://github.com/IntelPython/dpctl/pull/1137), [#1174](https://github.com/IntelPython/dpctl/pull/1174)
* Allow for mutation of `dpctl.tensor.usm_ndarray.flags.writable` [1141](https://github.com/IntelPython/dpctl/pull/1141)
* Added `dpctl.tensor.where` from array API [1147](https://github.com/IntelPython/dpctl/pull/1147)
* Include libtensor headers in `dpctl` installation layout [1185](https://github.com/IntelPython/dpctl/pull/1185)
* Added new properties of `dpctl.tensor.usm_ndarray` object [1199](https://github.com/IntelPython/dpctl/pull/1199)
* Added a list of unary and binary elementwise functions from array API:
- [1203](https://github.com/IntelPython/dpctl/pull/1203): `dpctl.tensor.add`, `dpctl.tensor.divide`, `dpctl.tensor.isnan`, `dpctl.tensor.isinf`, `dpctl.tensor.isfinite`, `dpctl.tensor.cos`, `dpctl.tensor.abs`, `dpctl.tensor.equal`
- [1205](https://github.com/IntelPython/dpctl/pull/1205): `dpctl.tensor.sqrt`
- [1209](https://github.com/IntelPython/dpctl/pull/1209): implements `out` keyword argument
- [1211](https://github.com/IntelPython/dpctl/pull/1211): `dpctl.tensor.multiply`, `dpctl.tensor.subtract`
- [1214](https://github.com/IntelPython/dpctl/pull/1214): `dpctl.tensor.not_equal`
- [1216](https://github.com/IntelPython/dpctl/pull/1216): `dpctl.tensor.exp`, `dpctl.tensor.sin`
- [1217](https://github.com/IntelPython/dpctl/pull/1217): `dpctl.tensor.real`, `dpctl.tensor.imag`, `dpctl.tensor.proj`
- [1218](https://github.com/IntelPython/dpctl/pull/1218): `dpctl.tensor.log`, `dpctl.tensor.log1p`, `dpctl.tensor.expm1`
- [1221](https://github.com/IntelPython/dpctl/pull/1221): `dpctl.tensor.floor_divide`
- [1235](https://github.com/IntelPython/dpctl/pull/1235): `dpctl.tensor.less`
- [1237](https://github.com/IntelPython/dpctl/pull/1237): in-place support for addition, multiplication and subtraction
* Added `dpctl.tensor.all` and `dpctl.tensor.any` [1204](https://github.com/IntelPython/dpctl/pull/1204)
* Added `dpctl.tensor.sum` [1210](https://github.com/IntelPython/dpctl/pull/1210)

Changed

* Updated examples of native Python extensions built using `dpctl` [1108](https://github.com/IntelPython/dpctl/pull/1108)
* Used security flags to compile and link native extensions of `dpctl` [1109](https://github.com/IntelPython/dpctl/pull/1109)
* Changed types of `dpctl.tensor.finfo` and `dpctl.tensor.iinfo` output structure per array API spec [1110](https://github.com/IntelPython/dpctl/pull/1110)
* Consolidated multiple USM temporaries life-time management `host_task`s to improve test suite stability [1111](https://github.com/IntelPython/dpctl/pull/1111)
* MAINT: Improved cmake target dependency tracking [1112](https://github.com/IntelPython/dpctl/pull/1112)
* MAINT: Improved docstrings for existing `dpctl.tensor` functions [1123](https://github.com/IntelPython/dpctl/pull/1123)
* Changed default value of `mode` keyword in `dpctl.tensor.take` and `dpctl.take.put` from `clip` to `wrap` [1132](https://github.com/IntelPython/dpctl/pull/1132)
* Added support for (nested) sequence of `dpctl.tensor.usm_ndarray` objects in `dpctl.tensor.asarray` [1139](https://github.com/IntelPython/dpctl/pull/1139)
* Improved exception handling in `dpctl.tensor.usm_ndarray.__setitem__` special method [1146](https://github.com/IntelPython/dpctl/pull/1146)
* Simplified implementation of copy-and-cast kernels and removed special casing for 2D arrays to conserve binary size [1165](https://github.com/IntelPython/dpctl/pull/1165)
* Improved speed of `dpctl.tensor.usm_ndarray` printing functionality [1187](https://github.com/IntelPython/dpctl/pull/1187)
* Require DPC++ RT 2023.1 to build and run `dpctl` [1195](ttps://github.com/IntelPython/dpctl/pull/1195)
* Compile offloading native extensions with `-fno-sycl-id-queries-fit-in-int` fixing [gh-1184](https://github.com/IntelPython/dpctl/issues/1184), [#1200](https://github.com/IntelPython/dpctl/pull/1200)
* Transition to conda-forge ecosystem [1213](https://github.com/IntelPython/dpctl/pull/1213)



Fixed

* Fix to add empty values check for `dpctl.tensor.place` [1105](https://github.com/IntelPython/dpctl/pull/1105), [#1106](https://github.com/IntelPython/dpctl/pull/1106)
* Fixed [gh-1089](https://github.com/IntelPython/dpctl/issues/1089) by improving `dpctl.tensor.asarray` handling of NumPy arrays viewing into host-accessible USM allocation objects.
* MAINT: Fixed build break with newer GCC and SYCLOS [1118](https://github.com/IntelPython/dpctl/pull/1118)
* Fixed a bug in basic indexing of `dpctl.tensor.usm_ndarray` [1136](https://github.com/IntelPython/dpctl/pull/1136)

Page 1 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.