Skip to content

Commit dea42f6

Browse files
Merge remote-tracking branch 'origin/master' into sycl_to_cython2_check
2 parents 174c0f1 + 3411f28 commit dea42f6

24 files changed

+587
-198
lines changed

.github/workflows/conda-package.yml

Lines changed: 9 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -14,45 +14,24 @@ jobs:
1414
python: [3.8, 3.9]
1515

1616
steps:
17-
- name: Install Intel repository
18-
run: |
19-
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB
20-
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB
21-
rm GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB
22-
sudo add-apt-repository "deb https://apt.repos.intel.com/oneapi all main"
23-
sudo apt-get update
24-
- name: Update libstdc++-dev
25-
run: |
26-
sudo apt remove -y gcc-7 g++-7 gcc-8 g++-8 gcc-10 g++-10
27-
sudo apt remove -y libstdc++-10-dev
28-
sudo apt autoremove
29-
sudo apt install --reinstall -y gcc-9 g++-9 libstdc++-9-dev
30-
- name: Install Intel OneAPI
31-
run: |
32-
sudo apt-get install intel-oneapi-mkl=2021.3.0-520 \
33-
intel-oneapi-mkl-devel=2021.3.0-520 \
34-
intel-oneapi-compiler-dpcpp-cpp=2021.3.0-3350
3517
- name: Checkout repo
36-
uses: actions/checkout@v2
18+
uses: actions/checkout@v3
3719
with:
3820
fetch-depth: 0
3921

22+
- name: Checkout oneDPL
23+
uses: actions/checkout@v3
24+
with:
25+
repository: oneapi-src/oneDPL
26+
path: oneDPL
27+
ref: oneDPL-2021.6.1-release
28+
4029
- name: Add conda to system path
4130
run: echo $CONDA/bin >> $GITHUB_PATH
4231
- name: Install conda-build
4332
run: conda install conda-build
4433
- name: Build conda package
45-
run: |
46-
. /opt/intel/oneapi/setvars.sh
47-
. ./scripts/install_cmake_lin.sh
48-
CHANNELS="-c dppy/label/dev -c intel -c defaults --override-channels"
49-
VERSIONS="--python ${{ matrix.python }}"
50-
TEST="--no-test"
51-
conda build \
52-
$TEST \
53-
$VERSIONS \
54-
$CHANNELS \
55-
conda-recipe
34+
run: ./scripts/build_conda_package.sh ${{ matrix.python }} $GITHUB_WORKSPACE/oneDPL
5635

5736
- name: Upload artifact
5837
uses: actions/upload-artifact@v2

conda-recipe/meta.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ requirements:
1111
- numpy 1.19
1212
- cython
1313
- cmake 3.19
14-
- dpctl >=0.10
14+
- dpctl >=0.12
1515
- mkl-devel-dpcpp {{ environ.get('MKL_VER', '>=2021.1.1') }}
1616
- tbb-devel
1717
- wheel
@@ -20,7 +20,7 @@ requirements:
2020
- dpcpp-cpp-rt {{ environ.get('DPCPP_VER', '>=2021.1.1') }}
2121
run:
2222
- python
23-
- dpctl >=0.10
23+
- dpctl >=0.12
2424
- {{ pin_compatible('dpcpp-cpp-rt', min_pin='x.x', max_pin='x') }}
2525
- {{ pin_compatible('mkl-dpcpp', min_pin='x.x', max_pin='x') }}
2626
- numpy >=1.15

doc/conf.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@
3131
author = 'Intel'
3232

3333
# The short X.Y version
34-
version = '0.9'
34+
version = '0.10'
3535
# The full version, including alpha/beta/rc tags
36-
release = '0.9.0'
36+
release = '0.10.0'
3737

3838

3939
# -- General configuration ---------------------------------------------------

dpnp/backend/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@
2727

2828
cmake_minimum_required(VERSION 3.10 FATAL_ERROR)
2929

30-
# set(DPNP_VERSION 0.9.0)
31-
# set(DPNP_API_VERSION 0.9)
30+
# set(DPNP_VERSION 0.10.0)
31+
# set(DPNP_API_VERSION 0.10)
3232

3333
# set directory where the custom finders live
3434
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules")

dpnp/backend/doc/Doxyfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ PROJECT_NAME = "DPNP C++ backend kernel library"
3838
# could be handy for archiving the generated documentation or if some version
3939
# control system is used.
4040

41-
PROJECT_NUMBER = 0.9.0
41+
PROJECT_NUMBER = 0.10.0
4242

4343
# Using the PROJECT_BRIEF tag one can provide an optional one line description
4444
# for a project that appears at the top of each page and should give viewer a

dpnp/backend/include/dpnp_iface_fft.hpp

Lines changed: 54 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -53,33 +53,76 @@
5353
* Compute the one-dimensional discrete Fourier Transform.
5454
*
5555
* @param[in] q_ref Reference to SYCL queue.
56-
* @param[in] array_in Input array.
57-
* @param[out] result Output array.
56+
* @param[in] array1_in Input array.
57+
* @param[out] result_out Output array.
5858
* @param[in] input_shape Array with shape information for input array.
59-
* @param[in] output_shape Array with shape information for output array.
60-
* @param[in] shape_size Number of elements in @ref input_shape or @ref output_shape arrays.
59+
* @param[in] result_shape Array with shape information for result array.
60+
* @param[in] shape_size Number of elements in @ref input_shape or @ref result_shape arrays.
6161
* @param[in] axis Axis ID to compute by.
6262
* @param[in] input_boundarie Limit number of elements for @ref axis.
6363
* @param[in] inverse Using inverse algorithm.
6464
* @param[in] norm Normalization mode. 0 - backward, 1 - forward, 2 - ortho.
6565
* @param[in] dep_event_vec_ref Reference to vector of SYCL events.
6666
*/
67-
template <typename _DataType>
67+
template <typename _DataType_input, typename _DataType_output>
6868
INP_DLLEXPORT DPCTLSyclEventRef dpnp_fft_fft_c(DPCTLSyclQueueRef q_ref,
69-
const void* array_in,
70-
void* result,
69+
const void* array1_in,
70+
void* result_out,
7171
const shape_elem_type* input_shape,
72-
const shape_elem_type* output_shape,
72+
const shape_elem_type* result_shape,
7373
size_t shape_size,
7474
long axis,
7575
long input_boundarie,
7676
size_t inverse,
7777
const size_t norm,
7878
const DPCTLEventVectorRef dep_event_vec_ref);
7979

80-
template <typename _DataType>
81-
INP_DLLEXPORT void dpnp_fft_fft_c(const void* array_in,
82-
void* result,
80+
template <typename _DataType_input, typename _DataType_output>
81+
INP_DLLEXPORT void dpnp_fft_fft_c(const void* array1_in,
82+
void* result_out,
83+
const shape_elem_type* input_shape,
84+
const shape_elem_type* output_shape,
85+
size_t shape_size,
86+
long axis,
87+
long input_boundarie,
88+
size_t inverse,
89+
const size_t norm);
90+
91+
92+
/**
93+
* @ingroup BACKEND_FFT_API
94+
* @brief 1D discrete Fourier Transform.
95+
*
96+
* Compute the one-dimensional discrete Fourier Transform for real input.
97+
*
98+
* @param[in] q_ref Reference to SYCL queue.
99+
* @param[in] array1_in Input array.
100+
* @param[out] result_out Output array.
101+
* @param[in] input_shape Array with shape information for input array.
102+
* @param[in] result_shape Array with shape information for result array.
103+
* @param[in] shape_size Number of elements in @ref input_shape or @ref result_shape arrays.
104+
* @param[in] axis Axis ID to compute by.
105+
* @param[in] input_boundarie Limit number of elements for @ref axis.
106+
* @param[in] inverse Using inverse algorithm.
107+
* @param[in] norm Normalization mode. 0 - backward, 1 - forward, 2 - ortho.
108+
* @param[in] dep_event_vec_ref Reference to vector of SYCL events.
109+
*/
110+
template <typename _DataType_input, typename _DataType_output>
111+
INP_DLLEXPORT DPCTLSyclEventRef dpnp_fft_rfft_c(DPCTLSyclQueueRef q_ref,
112+
const void* array1_in,
113+
void* result_out,
114+
const shape_elem_type* input_shape,
115+
const shape_elem_type* result_shape,
116+
size_t shape_size,
117+
long axis,
118+
long input_boundarie,
119+
size_t inverse,
120+
const size_t norm,
121+
const DPCTLEventVectorRef dep_event_vec_ref);
122+
123+
template <typename _DataType_input, typename _DataType_output>
124+
INP_DLLEXPORT void dpnp_fft_fft_c(const void* array1_in,
125+
void* result_out,
83126
const shape_elem_type* input_shape,
84127
const shape_elem_type* output_shape,
85128
size_t shape_size,

dpnp/backend/include/dpnp_iface_fptr.hpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,8 @@ enum class DPNPFuncName : size_t
166166
DPNP_FN_FABS_EXT, /**< Used in numpy.fabs() impl, requires extra parameters */
167167
DPNP_FN_FFT_FFT, /**< Used in numpy.fft.fft() impl */
168168
DPNP_FN_FFT_FFT_EXT, /**< Used in numpy.fft.fft() impl, requires extra parameters */
169+
DPNP_FN_FFT_RFFT, /**< Used in numpy.fft.rfft() impl */
170+
DPNP_FN_FFT_RFFT_EXT, /**< Used in numpy.fft.rfft() impl, requires extra parameters */
169171
DPNP_FN_FILL_DIAGONAL, /**< Used in numpy.fill_diagonal() impl */
170172
DPNP_FN_FILL_DIAGONAL_EXT, /**< Used in numpy.fill_diagonal() impl, requires extra parameters */
171173
DPNP_FN_FLATTEN, /**< Used in numpy.flatten() impl */

0 commit comments

Comments
 (0)