44 z, m)
bind(c, name="mma_prepare_aa_matrix_cuda")
45 import c_rp, c_ptr, c_int
46 type(c_ptr),
value :: AA, s, lambda, d, mu, y, a
52 bind(c, name="mma_prepare_hessian_cuda")
54 type(c_ptr),
value :: Hess, y, d, mu, lambda
82 subroutine cuda_hess(Hess_d, hijx_d, Ljjxinv_d, n, m) bind(c, name = 'cuda_Hess')
84 type(c_ptr),
value :: Hess_d, hijx_d, Ljjxinv_d
85 integer(c_int) :: n, m
89 low_d, upp_d, alpha_d, beta_d, n) bind(c, name = 'mma_Ljjxinv_cuda')
91 type(c_ptr),
value :: Ljjxinv_d, x_d, pjlambda_d, qjlambda_d, low_d, &
92 upp_d, alpha_d, beta_d
97 upp_d, alpha_d, beta_d, n) bind(c, name = 'mma_dipsolvesub1_cuda')
99 type(c_ptr),
value :: x_d, pjlambda_d, qjlambda_d, low_d, &
100 upp_d, alpha_d, beta_d
112 bind(c, name =
'mma_gensub1_cuda')
113 import c_rp, c_int, c_ptr
114 type(c_ptr),
value :: low_d, upp_d, x_d, xmin_d, xmax_d
115 real(c_rp) :: asyinit
120 asydecr, asyincr, n) bind(c, name = 'mma_gensub2_cuda')
121 import c_rp, c_int, c_ptr
122 type(c_ptr),
value :: low_d, upp_d, x_d, xold1_d, xold2_d, xdiff_d
123 real(c_rp) :: asydecr, asyincr
128 max_d, alpha_d, beta_d, p0j_d, q0j_d, pij_d, qij_d, n, m) &
129 bind(c, name =
'mma_gensub3_cuda')
131 type(c_ptr),
value :: x_d, df0dx_d, dfdx_d, low_d, upp_d, min_d, max_d, &
132 alpha_d, beta_d, p0j_d, q0j_d, pij_d, qij_d
133 integer(c_int) :: n, m
137 bind(c, name =
'mma_gensub4_cuda')
139 type(c_ptr),
value :: x_d, low_d, upp_d, pij_d, qij_d, bi_d
140 integer(c_int) :: n, m
150 subroutine cuda_rex(rex_d, x_d, low_d, upp_d, pij_d, p0j_d, qij_d, q0j_d, &
151 lambda_d, xsi_d, eta_d, n, m) bind(c, name = 'cuda_rex')
153 type(c_ptr),
value :: rex_d, x_d, low_d, upp_d, pij_d, p0j_d, qij_d, &
154 q0j_d, lambda_d, xsi_d, eta_d
155 integer(c_int) :: n, m
159 m) bind(c, name = 'cuda_relambda')
161 type(c_ptr),
value :: relambda_d, x_d, upp_d, low_d, pij_d, qij_d
162 integer(c_int) :: n, m
166 bind(c, name =
'cuda_sub2cons2')
167 import c_rp, c_int, c_ptr
168 type(c_ptr),
value :: rexsi_d, xsi_d, x_d, alpha_d
185 subroutine cuda_delx(delx_d, x_d, low_d, upp_d, pij_d, qij_d, p0j_d, &
186 q0j_d, alpha_d, beta_d, lambda_d, epsi, n, m) &
187 bind(c, name =
'cuda_delx')
188 import c_rp, c_int, c_ptr
189 type(c_ptr),
value :: delx_d, x_d, low_d, upp_d, pij_d, qij_d, p0j_d, &
190 q0j_d, alpha_d, beta_d, lambda_d
192 integer(c_int) :: n, m
197 subroutine cuda_gg(GG_d, x_d, low_d, upp_d, pij_d, qij_d, n, m) &
198 bind(c, name =
'cuda_GG')
200 type(c_ptr),
value :: GG_d, x_d, low_d, upp_d, pij_d, qij_d
201 integer(c_int) :: n, m
204 subroutine cuda_diagx(diagx_d, x_d, xsi_d, low_d, upp_d, p0j_d, q0j_d, &
205 pij_d, qij_d, alpha_d, beta_d, eta_d, lambda_d, n, m) &
206 bind(c, name =
'cuda_diagx')
208 type(c_ptr),
value :: diagx_d, x_d, xsi_d, low_d, upp_d, p0j_d, q0j_d, &
209 pij_d, qij_d, alpha_d, beta_d, eta_d, lambda_d
210 integer(c_int) :: n, m
213 subroutine cuda_bb(bb_d, GG_d, delx_d, diagx_d, n, m) &
214 bind(c, name =
'cuda_bb')
216 type(c_ptr),
value :: bb_d, GG_d, delx_d, diagx_d
217 integer(c_int) :: n, m
226 subroutine cuda_dx(dx_d, delx_d, diagx_d, GG_d, dlambda_d, n, m) &
227 bind(c, name =
'cuda_dx')
229 type(c_ptr),
value :: dx_d, delx_d, diagx_d, GG_d, dlambda_d
230 integer(c_int) :: n, m
233 subroutine cuda_dxsi(dxsi_d, xsi_d, dx_d, x_d, alpha_d, epsi, n) &
234 bind(c, name =
'cuda_dxsi')
235 import c_rp, c_int, c_ptr
236 type(c_ptr),
value :: dxsi_d, xsi_d, dx_d, x_d, alpha_d
241 subroutine cuda_deta(deta_d, eta_d, dx_d, x_d, beta_d, epsi, n) &
242 bind(c, name =
'cuda_deta')
243 import c_rp, c_int, c_ptr
244 type(c_ptr),
value :: deta_d, eta_d, dx_d, x_d, beta_d
265 subroutine cuda_kkt_rex(rex_d, df0dx_d, dfdx_d, xsi_d, eta_d, lambda_d, &
266 n, m) bind(c, name = 'cuda_kkt_rex')
268 type(c_ptr),
value :: rex_d, df0dx_d, dfdx_d, xsi_d, eta_d, lambda_d
269 integer(c_int) :: n, m
308 m) bind(c, name = 'cuda_updatebb')
309 import c_rp, c_int, c_ptr
310 type(c_ptr),
value :: bb_d, dellambda_d, dely_d, d_d, mu_d, y_d
316 y_d, a_d, zeta, z, m) bind(c, name = 'cuda_updateAA')
317 import c_rp, c_int, c_ptr
318 type(c_ptr),
value :: AA_d, globaltmp_mm_d, s_d, lambda_d, d_d, mu_d, &
321 real(c_rp) :: zeta, z
324 subroutine cuda_dy(dy_d, dely_d, dlambda_d, d_d, mu_d, y_d, n) &
325 bind(c, name =
'cuda_dy')
327 type(c_ptr),
value :: dy_d, dely_d, dlambda_d, d_d, mu_d, y_d