Skip to content

Commit 297810e

Browse files
Update maths functions to run on Iris Xe (#1502)
* Update dpnp.arctan2 * Update dpnp.copysign * Update dpnp.fmod * --amend * Update dpnp.hypot * Update dpnp.maximum * Update dpnp.minimum * Update dpnp.cross * Update test_mathematical * Add a new template function get_res_type * Skip test_remainder on Iris Xe * Fix TestAdd * Fix TestMultiply * Use dispatch_fmod_op in vector implementation * Remove fmap for dpnp_floor_divide_ext * Use dispatch_fmod_vec for vector impl * Rename and update get_res_type func * Fix remarks * Use a common check in dispatch_fmod_op * Update dispatch_fmod_op --------- Co-authored-by: Anton <[email protected]>
1 parent b15aafc commit 297810e

File tree

5 files changed

+229
-286
lines changed

5 files changed

+229
-286
lines changed

dpnp/backend/include/dpnp_gen_2arg_3type_tbl.hpp

+16-15
Original file line numberDiff line numberDiff line change
@@ -114,16 +114,16 @@ MACRO_2ARG_3TYPES_OP(dpnp_add_c,
114114
std::complex<double>))
115115

116116
MACRO_2ARG_3TYPES_OP(dpnp_arctan2_c,
117-
sycl::atan2((double)input1_elem, (double)input2_elem),
118-
nullptr,
119-
std::false_type,
117+
sycl::atan2(input1_elem, input2_elem),
118+
sycl::atan2(x1, x2),
119+
MACRO_UNPACK_TYPES(float, double),
120120
oneapi::mkl::vm::atan2,
121121
MACRO_UNPACK_TYPES(float, double))
122122

123123
MACRO_2ARG_3TYPES_OP(dpnp_copysign_c,
124-
sycl::copysign((double)input1_elem, (double)input2_elem),
125-
nullptr,
126-
std::false_type,
124+
sycl::copysign(input1_elem, input2_elem),
125+
sycl::copysign(x1, x2),
126+
MACRO_UNPACK_TYPES(float, double),
127127
oneapi::mkl::vm::copysign,
128128
MACRO_UNPACK_TYPES(float, double))
129129

@@ -137,17 +137,18 @@ MACRO_2ARG_3TYPES_OP(dpnp_divide_c,
137137
std::complex<float>,
138138
std::complex<double>))
139139

140-
MACRO_2ARG_3TYPES_OP(dpnp_fmod_c,
141-
sycl::fmod((double)input1_elem, (double)input2_elem),
142-
nullptr,
143-
std::false_type,
144-
oneapi::mkl::vm::fmod,
145-
MACRO_UNPACK_TYPES(float, double))
140+
MACRO_2ARG_3TYPES_OP(
141+
dpnp_fmod_c,
142+
dispatch_fmod_op(input1_elem, input2_elem),
143+
dispatch_fmod_op(x1, x2),
144+
MACRO_UNPACK_TYPES(std::int32_t, std::int64_t, float, double),
145+
oneapi::mkl::vm::fmod,
146+
MACRO_UNPACK_TYPES(float, double))
146147

147148
MACRO_2ARG_3TYPES_OP(dpnp_hypot_c,
148-
sycl::hypot((double)input1_elem, (double)input2_elem),
149-
nullptr,
150-
std::false_type,
149+
sycl::hypot(input1_elem, input2_elem),
150+
sycl::hypot(x1, x2),
151+
MACRO_UNPACK_TYPES(float, double),
151152
oneapi::mkl::vm::hypot,
152153
MACRO_UNPACK_TYPES(float, double))
153154

0 commit comments

Comments
 (0)