53 z, m)
bind(c, name="mma_prepare_aa_matrix_cuda")
54 import c_rp, c_ptr, c_int
55 type(c_ptr),
value :: AA, s, lambda, d, mu, y, a
91 subroutine cuda_hess(Hess_d, hijx_d, Ljjxinv_d, n, m) bind(c, name = 'cuda_Hess')
93 type(c_ptr),
value :: Hess_d, hijx_d, Ljjxinv_d
94 integer(c_int) :: n, m
98 low_d, upp_d, alpha_d, beta_d, n) bind(c, name = 'mma_Ljjxinv_cuda')
100 type(c_ptr),
value :: Ljjxinv_d, x_d, pjlambda_d, qjlambda_d, low_d, &
101 upp_d, alpha_d, beta_d
106 upp_d, alpha_d, beta_d, n) bind(c, name = 'mma_dipsolvesub1_cuda')
108 type(c_ptr),
value :: x_d, pjlambda_d, qjlambda_d, low_d, &
109 upp_d, alpha_d, beta_d
121 bind(c, name =
'mma_gensub1_cuda')
122 import c_rp, c_int, c_ptr
123 type(c_ptr),
value :: low_d, upp_d, x_d, xmin_d, xmax_d
124 real(c_rp) :: asyinit
129 asydecr, asyincr, n) bind(c, name = 'mma_gensub2_cuda')
130 import c_rp, c_int, c_ptr
131 type(c_ptr),
value :: low_d, upp_d, x_d, xold1_d, xold2_d, xdiff_d
132 real(c_rp) :: asydecr, asyincr
137 max_d, alpha_d, beta_d, p0j_d, q0j_d, pij_d, qij_d, n, m) &
138 bind(c, name =
'mma_gensub3_cuda')
140 type(c_ptr),
value :: x_d, df0dx_d, dfdx_d, low_d, upp_d, min_d, max_d, &
141 alpha_d, beta_d, p0j_d, q0j_d, pij_d, qij_d
142 integer(c_int) :: n, m
147 min_d, max_d, alpha_d, beta_d, p0j_d, q0j_d, pij_d, qij_d, n, m) &
148 bind(c, name =
'mma_gensub3_dip_cuda')
150 type(c_ptr),
value :: x_d, df0dx_d, dfdx_d, low_d, upp_d, min_d, max_d, &
151 alpha_d, beta_d, p0j_d, q0j_d, pij_d, qij_d
152 integer(c_int) :: n, m
156 bind(c, name =
'mma_gensub4_cuda')
158 type(c_ptr),
value :: x_d, low_d, upp_d, pij_d, qij_d, bi_d
159 integer(c_int) :: n, m
169 subroutine cuda_rex(rex_d, x_d, low_d, upp_d, pij_d, p0j_d, qij_d, q0j_d, &
170 lambda_d, xsi_d, eta_d, n, m) bind(c, name = 'cuda_rex')
172 type(c_ptr),
value :: rex_d, x_d, low_d, upp_d, pij_d, p0j_d, qij_d, &
173 q0j_d, lambda_d, xsi_d, eta_d
174 integer(c_int) :: n, m
178 m) bind(c, name = 'cuda_relambda')
180 type(c_ptr),
value :: relambda_d, x_d, upp_d, low_d, pij_d, qij_d
181 integer(c_int) :: n, m
185 bind(c, name =
'cuda_sub2cons2')
186 import c_rp, c_int, c_ptr
187 type(c_ptr),
value :: rexsi_d, xsi_d, x_d, alpha_d
204 subroutine cuda_delx(delx_d, x_d, low_d, upp_d, pij_d, qij_d, p0j_d, &
205 q0j_d, alpha_d, beta_d, lambda_d, epsi, n, m) &
206 bind(c, name =
'cuda_delx')
207 import c_rp, c_int, c_ptr
208 type(c_ptr),
value :: delx_d, x_d, low_d, upp_d, pij_d, qij_d, p0j_d, &
209 q0j_d, alpha_d, beta_d, lambda_d
211 integer(c_int) :: n, m
216 subroutine cuda_gg(GG_d, x_d, low_d, upp_d, pij_d, qij_d, n, m) &
217 bind(c, name =
'cuda_GG')
219 type(c_ptr),
value :: GG_d, x_d, low_d, upp_d, pij_d, qij_d
220 integer(c_int) :: n, m
223 subroutine cuda_diagx(diagx_d, x_d, xsi_d, low_d, upp_d, p0j_d, q0j_d, &
224 pij_d, qij_d, alpha_d, beta_d, eta_d, lambda_d, n, m) &
225 bind(c, name =
'cuda_diagx')
227 type(c_ptr),
value :: diagx_d, x_d, xsi_d, low_d, upp_d, p0j_d, q0j_d, &
228 pij_d, qij_d, alpha_d, beta_d, eta_d, lambda_d
229 integer(c_int) :: n, m
232 subroutine cuda_bb(bb_d, GG_d, delx_d, diagx_d, n, m) &
233 bind(c, name =
'cuda_bb')
235 type(c_ptr),
value :: bb_d, GG_d, delx_d, diagx_d
236 integer(c_int) :: n, m
245 subroutine cuda_dx(dx_d, delx_d, diagx_d, GG_d, dlambda_d, n, m) &
246 bind(c, name =
'cuda_dx')
248 type(c_ptr),
value :: dx_d, delx_d, diagx_d, GG_d, dlambda_d
249 integer(c_int) :: n, m
252 subroutine cuda_dxsi(dxsi_d, xsi_d, dx_d, x_d, alpha_d, epsi, n) &
253 bind(c, name =
'cuda_dxsi')
254 import c_rp, c_int, c_ptr
255 type(c_ptr),
value :: dxsi_d, xsi_d, dx_d, x_d, alpha_d
260 subroutine cuda_deta(deta_d, eta_d, dx_d, x_d, beta_d, epsi, n) &
261 bind(c, name =
'cuda_deta')
262 import c_rp, c_int, c_ptr
263 type(c_ptr),
value :: deta_d, eta_d, dx_d, x_d, beta_d
284 subroutine cuda_kkt_rex(rex_d, df0dx_d, dfdx_d, xsi_d, eta_d, lambda_d, &
285 n, m) bind(c, name = 'cuda_kkt_rex')
287 type(c_ptr),
value :: rex_d, df0dx_d, dfdx_d, xsi_d, eta_d, lambda_d
288 integer(c_int) :: n, m
293 lambda_d, n, m) bind(c, name = 'mma_dip_kkt_cuda')
295 type(c_ptr),
value :: res_d, x_d, df0dx_d, dfdx_d, xmin_d, xmax_d, &
297 integer(c_int) :: n, m
336 m) bind(c, name = 'cuda_updatebb')
337 import c_rp, c_int, c_ptr
338 type(c_ptr),
value :: bb_d, dellambda_d, dely_d, d_d, mu_d, y_d
344 y_d, a_d, zeta, z, m) bind(c, name = 'cuda_updateAA')
345 import c_rp, c_int, c_ptr
346 type(c_ptr),
value :: AA_d, globaltmp_mm_d, s_d, lambda_d, d_d, mu_d, &
349 real(c_rp) :: zeta, z
352 subroutine cuda_dy(dy_d, dely_d, dlambda_d, d_d, mu_d, y_d, n) &
353 bind(c, name =
'cuda_dy')
355 type(c_ptr),
value :: dy_d, dely_d, dlambda_d, d_d, mu_d, y_d