@@ -66,52 +66,77 @@ namespace dense {
66
66
namespace {
67
67
68
68
69
- GKO_REGISTER_OPERATION (simple_apply, dense::simple_apply);
70
- GKO_REGISTER_OPERATION (apply, dense::apply);
71
- GKO_REGISTER_OPERATION (copy, dense::copy);
72
- GKO_REGISTER_OPERATION (fill, dense::fill);
73
- GKO_REGISTER_OPERATION (scale, dense::scale);
74
- GKO_REGISTER_OPERATION (inv_scale, dense::inv_scale);
75
- GKO_REGISTER_OPERATION (add_scaled, dense::add_scaled);
76
- GKO_REGISTER_OPERATION (sub_scaled, dense::sub_scaled);
77
- GKO_REGISTER_OPERATION (add_scaled_diag, dense::add_scaled_diag);
78
- GKO_REGISTER_OPERATION (sub_scaled_diag, dense::sub_scaled_diag);
79
- GKO_REGISTER_OPERATION (compute_dot, dense::compute_dot_dispatch);
80
- GKO_REGISTER_OPERATION (compute_conj_dot, dense::compute_conj_dot_dispatch);
81
- GKO_REGISTER_OPERATION (compute_norm2, dense::compute_norm2_dispatch);
82
- GKO_REGISTER_OPERATION (compute_norm1, dense::compute_norm1);
83
- GKO_REGISTER_OPERATION (compute_max_nnz_per_row, dense::compute_max_nnz_per_row);
69
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (simple_apply, dense::simple_apply);
70
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (apply, dense::apply);
71
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (copy, dense::copy);
72
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (fill, dense::fill);
73
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (scale, dense::scale);
74
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (inv_scale, dense::inv_scale);
75
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (add_scaled, dense::add_scaled);
76
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (sub_scaled, dense::sub_scaled);
77
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (add_scaled_diag,
78
+ dense::add_scaled_diag);
79
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (sub_scaled_diag,
80
+ dense::sub_scaled_diag);
81
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (compute_dot,
82
+ dense::compute_dot_dispatch);
83
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (compute_conj_dot,
84
+ dense::compute_conj_dot_dispatch);
85
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (compute_norm2,
86
+ dense::compute_norm2_dispatch);
87
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (compute_norm1, dense::compute_norm1);
88
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (compute_max_nnz_per_row,
89
+ dense::compute_max_nnz_per_row);
84
90
GKO_REGISTER_OPERATION (compute_hybrid_coo_row_ptrs,
85
91
hybrid::compute_coo_row_ptrs);
86
- GKO_REGISTER_OPERATION (count_nonzeros_per_row, dense::count_nonzeros_per_row);
87
- GKO_REGISTER_OPERATION (count_nonzero_blocks_per_row,
88
- dense::count_nonzero_blocks_per_row);
89
- GKO_REGISTER_OPERATION (prefix_sum, components::prefix_sum);
92
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (count_nonzeros_per_row,
93
+ dense::count_nonzeros_per_row);
94
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (count_nonzero_blocks_per_row,
95
+ dense::count_nonzero_blocks_per_row);
96
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (prefix_sum, components::prefix_sum);
90
97
GKO_REGISTER_OPERATION (compute_slice_sets, dense::compute_slice_sets);
91
- GKO_REGISTER_OPERATION (transpose, dense::transpose);
92
- GKO_REGISTER_OPERATION (conj_transpose, dense::conj_transpose);
93
- GKO_REGISTER_OPERATION (symm_permute, dense::symm_permute);
94
- GKO_REGISTER_OPERATION (inv_symm_permute, dense::inv_symm_permute);
95
- GKO_REGISTER_OPERATION (row_gather, dense::row_gather);
96
- GKO_REGISTER_OPERATION (advanced_row_gather, dense::advanced_row_gather);
97
- GKO_REGISTER_OPERATION (column_permute, dense::column_permute);
98
- GKO_REGISTER_OPERATION (inverse_row_permute, dense::inverse_row_permute);
99
- GKO_REGISTER_OPERATION (inverse_column_permute, dense::inverse_column_permute);
100
- GKO_REGISTER_OPERATION (fill_in_matrix_data, dense::fill_in_matrix_data);
101
- GKO_REGISTER_OPERATION (convert_to_coo, dense::convert_to_coo);
102
- GKO_REGISTER_OPERATION (convert_to_csr, dense::convert_to_csr);
103
- GKO_REGISTER_OPERATION (convert_to_ell, dense::convert_to_ell);
104
- GKO_REGISTER_OPERATION (convert_to_fbcsr, dense::convert_to_fbcsr);
105
- GKO_REGISTER_OPERATION (convert_to_hybrid, dense::convert_to_hybrid);
106
- GKO_REGISTER_OPERATION (convert_to_sellp, dense::convert_to_sellp);
107
- GKO_REGISTER_OPERATION (convert_to_sparsity_csr, dense::convert_to_sparsity_csr);
108
- GKO_REGISTER_OPERATION (extract_diagonal, dense::extract_diagonal);
109
- GKO_REGISTER_OPERATION (inplace_absolute_dense, dense::inplace_absolute_dense);
110
- GKO_REGISTER_OPERATION (outplace_absolute_dense, dense::outplace_absolute_dense);
111
- GKO_REGISTER_OPERATION (make_complex, dense::make_complex);
112
- GKO_REGISTER_OPERATION (get_real, dense::get_real);
113
- GKO_REGISTER_OPERATION (get_imag, dense::get_imag);
114
- GKO_REGISTER_OPERATION (add_scaled_identity, dense::add_scaled_identity);
98
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (transpose, dense::transpose);
99
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (conj_transpose,
100
+ dense::conj_transpose);
101
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (symm_permute, dense::symm_permute);
102
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (inv_symm_permute,
103
+ dense::inv_symm_permute);
104
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (row_gather, dense::row_gather);
105
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (advanced_row_gather,
106
+ dense::advanced_row_gather);
107
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (column_permute,
108
+ dense::column_permute);
109
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (inverse_row_permute,
110
+ dense::inverse_row_permute);
111
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (inverse_column_permute,
112
+ dense::inverse_column_permute);
113
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (fill_in_matrix_data,
114
+ dense::fill_in_matrix_data);
115
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (convert_to_coo,
116
+ dense::convert_to_coo);
117
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (convert_to_csr,
118
+ dense::convert_to_csr);
119
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (convert_to_ell,
120
+ dense::convert_to_ell);
121
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (convert_to_fbcsr,
122
+ dense::convert_to_fbcsr);
123
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (convert_to_hybrid,
124
+ dense::convert_to_hybrid);
125
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (convert_to_sellp,
126
+ dense::convert_to_sellp);
127
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (convert_to_sparsity_csr,
128
+ dense::convert_to_sparsity_csr);
129
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (extract_diagonal,
130
+ dense::extract_diagonal);
131
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (inplace_absolute_dense,
132
+ dense::inplace_absolute_dense);
133
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (outplace_absolute_dense,
134
+ dense::outplace_absolute_dense);
135
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (make_complex, dense::make_complex);
136
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (get_real, dense::get_real);
137
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (get_imag, dense::get_imag);
138
+ GKO_REGISTER_OPERATION_WITH_WORK_ESTIMATE (add_scaled_identity,
139
+ dense::add_scaled_identity);
115
140
116
141
117
142
} // anonymous namespace
0 commit comments