diff --git a/CHANGELOG.md b/CHANGELOG.md index ff54b2e6d151..376ed6497a38 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 * Added implementation of `dpnp.linalg.lu_factor` (SciPy-compatible) [#2557](https://github.com/IntelPython/dpnp/pull/2557), [#2565](https://github.com/IntelPython/dpnp/pull/2565) * Added implementation of `dpnp.piecewise` [#2550](https://github.com/IntelPython/dpnp/pull/2550) * Added implementation of `dpnp.linalg.lu_solve` for 2D inputs (SciPy-compatible) [#2575](https://github.com/IntelPython/dpnp/pull/2575) +* Added implementation of `dpnp.special.erfc` [#2588](https://github.com/IntelPython/dpnp/pull/2588) ### Changed diff --git a/dpnp/backend/extensions/blas/CMakeLists.txt b/dpnp/backend/extensions/blas/CMakeLists.txt index 3f81253169d1..f5e0ecc737de 100644 --- a/dpnp/backend/extensions/blas/CMakeLists.txt +++ b/dpnp/backend/extensions/blas/CMakeLists.txt @@ -60,8 +60,7 @@ endif() set_target_properties(${python_module_name} PROPERTIES CMAKE_POSITION_INDEPENDENT_CODE ON) -target_include_directories(${python_module_name} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../include) -target_include_directories(${python_module_name} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../src) +target_include_directories(${python_module_name} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../) target_include_directories(${python_module_name} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../common) target_include_directories(${python_module_name} PUBLIC ${Dpctl_INCLUDE_DIRS}) diff --git a/dpnp/backend/extensions/blas/blas_py.cpp b/dpnp/backend/extensions/blas/blas_py.cpp index 850c1e784c7b..36fc29bae482 100644 --- a/dpnp/backend/extensions/blas/blas_py.cpp +++ b/dpnp/backend/extensions/blas/blas_py.cpp @@ -30,6 +30,9 @@ #include #include +// utils extension header +#include "ext/common.hpp" + #include "dot.hpp" #include "dot_common.hpp" #include "dotc.hpp" @@ -41,7 +44,9 @@ namespace blas_ns = dpnp::extensions::blas; namespace py = pybind11; namespace dot_ns = blas_ns::dot; + using dot_ns::dot_impl_fn_ptr_t; +using ext::common::init_dispatch_vector; // populate dispatch vectors and tables void init_dispatch_vectors_tables(void) @@ -64,7 +69,7 @@ PYBIND11_MODULE(_blas_impl, m) using event_vecT = std::vector; { - dot_ns::init_dot_dispatch_vector( + init_dispatch_vector( dot_dispatch_vector); auto dot_pyapi = [&](sycl::queue &exec_q, const arrayT &src1, @@ -82,7 +87,7 @@ PYBIND11_MODULE(_blas_impl, m) } { - dot_ns::init_dot_dispatch_vector( + init_dispatch_vector( dotc_dispatch_vector); auto dotc_pyapi = [&](sycl::queue &exec_q, const arrayT &src1, @@ -101,7 +106,7 @@ PYBIND11_MODULE(_blas_impl, m) } { - dot_ns::init_dot_dispatch_vector( + init_dispatch_vector( dotu_dispatch_vector); auto dotu_pyapi = [&](sycl::queue &exec_q, const arrayT &src1, diff --git a/dpnp/backend/extensions/blas/dot_common.hpp b/dpnp/backend/extensions/blas/dot_common.hpp index 169421a2464c..faa31cb6b388 100644 --- a/dpnp/backend/extensions/blas/dot_common.hpp +++ b/dpnp/backend/extensions/blas/dot_common.hpp @@ -165,13 +165,4 @@ std::pair return std::make_pair(args_ev, dot_ev); } - -template