Skip to content

Commit e2d26e1

Browse files
authored
stat mod to desc (#771)
1 parent 4dc8704 commit e2d26e1

File tree

2 files changed

+92
-96
lines changed

2 files changed

+92
-96
lines changed

dpnp/dpnp_algo/dpnp_algo_statistics.pyx

Lines changed: 22 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,11 @@ ctypedef void(*fptr_custom_std_var_1in_1out_t)(void *, void * , size_t * , size_
5757
ctypedef void(*custom_statistic_1in_1out_func_ptr_t)(void *, void * , size_t * , size_t, size_t * , size_t)
5858

5959

60-
cdef dparray call_fptr_custom_std_var_1in_1out(DPNPFuncName fptr_name, dparray a, ddof):
60+
cdef dparray call_fptr_custom_std_var_1in_1out(DPNPFuncName fptr_name, utils.dpnp_descriptor x1, ddof):
61+
cdef dparray_shape_type x1_shape = x1.shape
6162

6263
""" Convert string type names (dparray.dtype) to C enum DPNPFuncType """
63-
cdef DPNPFuncType param_type = dpnp_dtype_to_DPNPFuncType(a.dtype)
64+
cdef DPNPFuncType param_type = dpnp_dtype_to_DPNPFuncType(x1.dtype)
6465

6566
""" get the FPTR data structure """
6667
cdef DPNPFuncData kernel_data = get_dpnp_function_ptr(fptr_name, param_type, DPNP_FT_NONE)
@@ -76,8 +77,8 @@ cdef dparray call_fptr_custom_std_var_1in_1out(DPNPFuncName fptr_name, dparray a
7677
cdef Py_ssize_t axis_size = 0
7778

7879
""" Call FPTR function """
79-
func(a.get_data(), result.get_data(), < size_t * > a._dparray_shape.data(),
80-
a.ndim, < size_t * > axis.data(), axis_size, ddof)
80+
func(x1.get_data(), result.get_data(), < size_t * > x1_shape.data(),
81+
x1.ndim, < size_t * > axis.data(), axis_size, ddof)
8182

8283
return result
8384

@@ -91,14 +92,12 @@ cpdef dpnp_average(utils.dpnp_descriptor x1):
9192
return (return_type(array_sum / x1.size))
9293

9394

94-
cpdef dparray dpnp_correlate(dparray x1, dparray x2):
95+
cpdef dparray dpnp_correlate(utils.dpnp_descriptor x1, utils.dpnp_descriptor x2):
9596
cdef DPNPFuncType param1_type = dpnp_dtype_to_DPNPFuncType(x1.dtype)
9697
cdef DPNPFuncType param2_type = dpnp_dtype_to_DPNPFuncType(x2.dtype)
9798

98-
cdef dparray_shape_type x1_shape, x2_shape
99-
100-
x1_shape = x1.shape
101-
x2_shape = x2.shape
99+
cdef dparray_shape_type x1_shape = x1.shape
100+
cdef dparray_shape_type x2_shape = x2.shape
102101

103102
cdef DPNPFuncData kernel_data = get_dpnp_function_ptr(DPNP_FN_CORRELATE, param1_type, param2_type)
104103

@@ -220,24 +219,24 @@ cpdef dparray dpnp_mean(dparray input, axis):
220219
cdef long size_input = input.size
221220
cdef dparray_shape_type shape_input = input.shape
222221

223-
if input.dtype == numpy.float32:
224-
res_type = numpy.float32
222+
if input.dtype == dpnp.float32:
223+
res_type = dpnp.float32
225224
else:
226-
res_type = numpy.float64
225+
res_type = dpnp.float64
227226

228227
if size_input == 0:
229-
return dpnp.array([numpy.nan], dtype=res_type)
228+
return dpnp.array([dpnp.nan], dtype=res_type)
230229

231230
if isinstance(axis, int):
232231
axis_ = tuple([axis])
233232
else:
234233
axis_ = axis
235234

236235
if axis_ is None:
237-
output_shape = dparray(1, dtype=numpy.int64)
236+
output_shape = dparray(1, dtype=dpnp.int64)
238237
output_shape[0] = 1
239238
else:
240-
output_shape = dparray(len(shape_input) - len(axis_), dtype=numpy.int64)
239+
output_shape = dparray(len(shape_input) - len(axis_), dtype=dpnp.int64)
241240
ind = 0
242241
for id, shape_axis in enumerate(shape_input):
243242
if id not in axis_:
@@ -316,7 +315,8 @@ cpdef dparray dpnp_mean(dparray input, axis):
316315
return dpnp_result_array / del_
317316

318317

319-
cpdef dparray dpnp_median(dparray array1):
318+
cpdef dparray dpnp_median(utils.dpnp_descriptor array1):
319+
cdef dparray_shape_type x1_shape = array1.shape
320320
cdef DPNPFuncType param1_type = dpnp_dtype_to_DPNPFuncType(array1.dtype)
321321

322322
cdef DPNPFuncData kernel_data = get_dpnp_function_ptr(DPNP_FN_MEDIAN, param1_type, param1_type)
@@ -330,7 +330,7 @@ cpdef dparray dpnp_median(dparray array1):
330330
cdef dparray_shape_type axis
331331
cdef Py_ssize_t axis_size = 0
332332

333-
func(array1.get_data(), result.get_data(), < size_t * > array1._dparray_shape.data(), array1.ndim, < size_t * > axis.data(), axis_size)
333+
func(array1.get_data(), result.get_data(), < size_t * > x1_shape.data(), array1.ndim, < size_t * > axis.data(), axis_size)
334334

335335
return result
336336

@@ -393,7 +393,7 @@ cpdef dparray dpnp_min(dparray input, axis):
393393
return _dpnp_min(input, axis_, output_shape)
394394

395395

396-
cpdef dparray dpnp_nanvar(dparray arr, ddof):
396+
cpdef dparray dpnp_nanvar(utils.dpnp_descriptor arr, ddof):
397397
cdef dparray mask_arr = dpnp.isnan(arr)
398398
n = sum(mask_arr)
399399
res_size = arr.size - n
@@ -409,12 +409,13 @@ cpdef dparray dpnp_nanvar(dparray arr, ddof):
409409

410410
func(arr.get_data(), mask_arr.get_data(), without_nan_arr.get_data(), arr.size)
411411

412-
return call_fptr_custom_std_var_1in_1out(DPNP_FN_VAR, without_nan_arr, ddof)
412+
without_nan_arr_desc = dpnp.get_dpnp_descriptor(without_nan_arr)
413+
return call_fptr_custom_std_var_1in_1out(DPNP_FN_VAR, without_nan_arr_desc, ddof)
413414

414415

415-
cpdef dparray dpnp_std(dparray a, size_t ddof):
416+
cpdef dparray dpnp_std(utils.dpnp_descriptor a, size_t ddof):
416417
return call_fptr_custom_std_var_1in_1out(DPNP_FN_STD, a, ddof)
417418

418419

419-
cpdef dparray dpnp_var(dparray a, size_t ddof):
420+
cpdef dparray dpnp_var(utils.dpnp_descriptor a, size_t ddof):
420421
return call_fptr_custom_std_var_1in_1out(DPNP_FN_VAR, a, ddof)

0 commit comments

Comments
 (0)