Skip to content

Commit d3e0c45

Browse files
authored
Merge branch 'master' into in-place-element-wise-func-casting
2 parents 86d5c69 + cf2a106 commit d3e0c45

File tree

191 files changed

+22416
-4893
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

191 files changed

+22416
-4893
lines changed

.github/workflows/conda-package.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ env:
1313
# Follow oneAPI installation instruction for conda, since intel channel is not longer available
1414
# CHANNELS: '-c dppy/label/dev -c intel -c conda-forge --override-channels'
1515
CHANNELS: '-c dppy/label/dev -c https://software.repos.intel.com/python/conda/ -c conda-forge --override-channels'
16-
CONDA_BUILD_VERSION: '24.9.0'
16+
CONDA_BUILD_VERSION: '24.11.2'
1717
CONDA_INDEX_VERSION: '0.5.0'
1818
RERUN_TESTS_ON_FAILURE: 'true'
1919
RUN_TESTS_MAX_ATTEMPTS: 2

.github/workflows/openssf-scorecard.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,6 @@ jobs:
6868

6969
# Upload the results to GitHub's code scanning dashboard.
7070
- name: "Upload to code-scanning"
71-
uses: github/codeql-action/upload-sarif@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # v3.27.5
71+
uses: github/codeql-action/upload-sarif@aa578102511db1f4524ed59b8cc2bae4f6e88195 # v3.27.6
7272
with:
7373
sarif_file: results.sarif

.pre-commit-config.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,8 @@ repos:
3434
(?x)^(
3535
dpnp/tests/test_arraycreation.py|
3636
dpnp/tests/test_sycl_queue.py|
37-
dpnp/tests/test_usm_type.py
37+
dpnp/tests/test_usm_type.py|
38+
dpnp/tests/third_party/cupy/core_tests/test_nep50_examples.py
3839
)$
3940
- id: python-no-log-warn
4041
- id: python-use-type-annotations

CHANGELOG.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,26 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1313
### Fixed
1414

1515

16+
## [0.16.1] - 12/06/2024
17+
18+
This is a bug-fix release.
19+
20+
### Changed
21+
22+
* Changed to use `Miniforge` installer in GitHub actions [#2057](https://github.com/IntelPython/dpnp/pull/2057)
23+
* Updated `README.md` to reflect current installation requirements and available options [#2166](https://github.com/IntelPython/dpnp/pull/2166)
24+
* Corrected the list of owners and code maintainers [#2185](https://github.com/IntelPython/dpnp/pull/2185)
25+
* Bumped the version of `oneMKL` interface used in dpnp build by default to align it with `2025.0` oneAPI release [#2193](https://github.com/IntelPython/dpnp/pull/2193)
26+
27+
### Fixed
28+
29+
* Resolved an issue with Compute Follows Data inconsistency in `dpnp.extract` function [#2172](https://github.com/IntelPython/dpnp/pull/2172)
30+
* Resolved an import error when using `dpnp` in virtual environment on Linux [#2199](https://github.com/IntelPython/dpnp/pull/2199)
31+
* Fixed incorrect result produced by `dpnp.fft.fft` function when input array has negative strides [#2202](https://github.com/IntelPython/dpnp/pull/2202)
32+
* Fixed an issue with `numpy.ndarray` input processing in the `dpnp.from_dlpack` function and updated the documentation [#2209](https://github.com/IntelPython/dpnp/pull/2209)
33+
* Resolved a compilation error when building with DPC++ 2025.1 compiler [#2211](https://github.com/IntelPython/dpnp/pull/2211)
34+
35+
1636
## [0.16.0] - 10/14/2024
1737

1838
This release reaches an important milestone by making offloading fully asynchronous. Calls to `dpnp` submit tasks for execution to DPC++ runtime and return without waiting for execution of these tasks to finish. The sequential semantics a user comes to expect from execution of Python script is preserved though.

CMakeLists.txt

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,9 @@ project(dpnp
66
DESCRIPTION "NumPy-like API accelerated by SYCL."
77
)
88

9-
option(DPNP_GENERATE_COVERAGE "Enable build DPNP with coverage instrumentation" FALSE)
10-
option(DPNP_BACKEND_TESTS "Enable building of DPNP backend test suite" FALSE)
9+
option(DPNP_GENERATE_COVERAGE "Enable build DPNP with coverage instrumentation" OFF)
10+
option(DPNP_BACKEND_TESTS "Enable building of DPNP backend test suite" OFF)
11+
option(DPNP_WITH_REDIST "Build DPNP assuming DPC++ redistributable is installed into Python prefix" OFF)
1112

1213
set(CMAKE_CXX_STANDARD 17)
1314
set(CMAKE_CXX_STANDARD_REQUIRED True)
@@ -111,8 +112,8 @@ if(_use_onemkl_interfaces)
111112
set(ENABLE_CUSOLVER_BACKEND True)
112113
set(ENABLE_CUFFT_BACKEND True)
113114
# set(ENABLE_CURAND_BACKEND True)
114-
set(ENABLE_MKLGPU_BACKEND False)
115-
set(ENABLE_MKLCPU_BACKEND False)
115+
set(ENABLE_MKLGPU_BACKEND True)
116+
set(ENABLE_MKLCPU_BACKEND True)
116117
endif()
117118

118119
if(DPNP_ONEMKL_INTERFACES_DIR)

conda-recipe/bld.bat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ if DEFINED OVERRIDE_INTEL_IPO (
1616
set "SKBUILD_ARGS=%SKBUILD_ARGS% -DCMAKE_INTERPROCEDURAL_OPTIMIZATION:BOOL=FALSE"
1717
)
1818

19-
FOR %%V IN (14.0.0 14 15.0.0 15 16.0.0 16 17.0.0 17) DO @(
19+
FOR %%V IN (17.0.0 17 18.0.0 18 19.0.0 19) DO @(
2020
REM set DIR_HINT if directory exists
2121
IF EXIST "%BUILD_PREFIX%\Library\lib\clang\%%V\" (
2222
SET "SYCL_INCLUDE_DIR_HINT=%BUILD_PREFIX%\Library\lib\clang\%%V"

conda-recipe/build.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/bash
22

33
# This is necessary to help DPC++ find Intel libraries such as SVML, IRNG, etc in build prefix
4-
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${BUILD_PREFIX}/lib"
4+
export LIBRARY_PATH="$LIBRARY_PATH:${BUILD_PREFIX}/lib"
55

66
# Intel LLVM must cooperate with compiler and sysroot from conda
77
echo "--gcc-toolchain=${BUILD_PREFIX} --sysroot=${BUILD_PREFIX}/${HOST}/sysroot -target ${HOST}" > icpx_for_conda.cfg
@@ -18,6 +18,7 @@ export DPL_ROOT_HINT=$PREFIX
1818
export MKL_ROOT_HINT=$PREFIX
1919
SKBUILD_ARGS=(-- "-DCMAKE_C_COMPILER:PATH=icx" "-DCMAKE_CXX_COMPILER:PATH=icpx" "-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON")
2020
SKBUILD_ARGS=("${SKBUILD_ARGS[@]}" "-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON")
21+
SKBUILD_ARGS=("${SKBUILD_ARGS[@]}" "-DDPNP_WITH_REDIST:BOOL=ON")
2122

2223
# Build wheel package
2324
WHEELS_BUILD_ARGS=("-p" "manylinux_2_28_x86_64")

doc/conf.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,7 @@ def _can_document_member(member, *args, **kwargs):
220220
"python": ("https://docs.python.org/3/", None),
221221
"numpy": ("https://docs.scipy.org/doc/numpy/", None),
222222
"scipy": ("https://docs.scipy.org/doc/scipy/reference/", None),
223+
"dpctl": ("https://intelpython.github.io/dpctl/latest/", None),
223224
}
224225

225226
# If true, `todo` and `todoList` produce output, else they produce nothing.

dpnp/CMakeLists.txt

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
function(build_dpnp_cython_ext _trgt _src _dest)
22
set(options SYCL)
3-
cmake_parse_arguments(BUILD_DPNP_EXT "${options}" "" "" ${ARGN})
43
add_cython_target(${_trgt} ${_src} CXX OUTPUT_VAR _generated_src)
54
message(STATUS "Using ${_trgt}")
65

@@ -41,15 +40,19 @@ function(build_dpnp_cython_ext _trgt _src _dest)
4140
VERBATIM COMMENT "Copying Cython-generated source for target ${_trgt} to dpnp source layout"
4241
)
4342
endif()
43+
44+
set(_rpath_value "$ORIGIN/..")
45+
if (DPNP_WITH_REDIST)
46+
set(_rpath_value "${_rpath_value}:$ORIGIN/../../../../")
47+
endif()
48+
set_target_properties(${_trgt} PROPERTIES INSTALL_RPATH ${_rpath_value})
49+
4450
install(TARGETS ${_trgt} LIBRARY DESTINATION ${_dest})
4551
endfunction()
4652

4753
function(build_dpnp_cython_ext_with_backend _trgt _src _dest)
4854
build_dpnp_cython_ext(${_trgt} ${_src} ${_dest})
4955
target_link_libraries(${_trgt} PRIVATE dpnp_backend_library)
50-
if (UNIX)
51-
set_target_properties(${_trgt} PROPERTIES INSTALL_RPATH "$ORIGIN/..")
52-
endif()
5356
endfunction()
5457

5558
add_subdirectory(backend)

dpnp/__init__.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,9 @@
4949
[os.getenv("PATH", ""), mypath, dpctlpath]
5050
)
5151

52+
# Borrowed from DPCTL
53+
from dpctl.tensor import DLDeviceType
54+
5255
from dpnp.dpnp_array import dpnp_array as ndarray
5356
from dpnp.dpnp_flatiter import flatiter as flatiter
5457
from dpnp.dpnp_iface_types import *

0 commit comments

Comments
 (0)