66 integer,
parameter,
public :: &
75 integer,
parameter,
public :: &
86 integer,
parameter,
public :: &
95 integer,
parameter,
public :: &
106 subroutine cuda_init(context, device, stream, device_number, rank)
110 type(c_ptr),
intent(inout) :: context
111 type(c_ptr),
intent(inout) :: device
112 type(c_ptr),
intent(inout) :: stream
113 integer,
intent(inout) :: device_number
114 integer,
intent(out) :: rank
119 subroutine cuda_end(context, device)
123 type(c_ptr),
intent(inout) :: context
124 type(c_ptr),
intent(inout) :: device
133 type(c_ptr),
intent(inout) :: module_map
142 type(c_ptr),
intent(inout) :: module_map
151 type(c_ptr),
intent(inout) :: module_map
152 type(c_ptr),
intent(inout) :: modul
153 type(c_ptr),
intent(inout) :: device
154 character(kind=c_char),
intent(in) :: fname(*)
155 character(kind=c_char),
intent(in) :: flags(*)
164 type(c_ptr),
intent(inout) :: kernel
165 type(c_ptr),
intent(inout) :: modul
166 character(kind=c_char),
intent(in) :: kernel_name(*)
174 type(c_ptr),
intent(inout) :: modul
183 type(c_ptr),
intent(inout) :: kernel
192 type(c_ptr),
intent(inout) :: device
193 integer,
intent(out) :: max_threads
202 type(c_ptr),
intent(inout) :: device
203 integer,
intent(out) :: max_threads
212 type(c_ptr),
intent(inout) :: device
213 integer,
intent(out) :: max_dim
222 type(c_ptr),
intent(inout) :: device
223 integer,
intent(out) :: max_dim
232 type(c_ptr),
intent(inout) :: device
233 integer,
intent(out) :: max_dim
242 type(c_ptr),
intent(inout) :: device
243 integer,
intent(out) :: max_dim
252 type(c_ptr),
intent(inout) :: device
253 integer,
intent(out) :: max_dim
262 type(c_ptr),
intent(inout) :: device
263 integer,
intent(out) :: max_dim
271 use,
intrinsic :: iso_fortran_env
274 type(c_ptr),
intent(inout) :: device
275 integer(int64),
intent(out) :: total_memory
282 use,
intrinsic :: iso_fortran_env
285 type(c_ptr),
intent(inout) :: device
286 integer(int64),
intent(out) :: shared_memory
293 use,
intrinsic :: iso_fortran_env
296 type(c_ptr),
intent(inout) :: cuda_ptr
297 integer(int64),
intent(in) :: size
306 type(c_ptr),
intent(inout) :: cuda_ptr
315 type(c_ptr),
intent(inout) :: arg_array
324 type(c_ptr),
intent(inout) :: arg_array
333 type(c_ptr),
intent(inout) :: arg_array
334 type(c_ptr),
intent(in) :: cuda_ptr
335 integer,
intent(in) :: arg_index
354 use,
intrinsic :: iso_fortran_env
357 type(c_ptr),
intent(inout) :: kernel
358 integer(int64),
intent(in) :: griddim
359 integer(int64),
intent(in) :: blockdim
360 integer(int64),
intent(in) :: shared_mem
361 type(c_ptr),
intent(inout) :: arg_array
370 type(c_ptr),
intent(inout) :: device
371 character(kind=c_char),
intent(inout) :: name(*)
380 type(c_ptr),
intent(inout) :: device
381 integer,
intent(out) :: major
382 integer,
intent(out) :: minor
391 integer,
intent(out) :: version
400 type(c_ptr),
intent(inout) :: device
401 integer,
intent(out) :: warpsize
404 subroutine cuda_deref(cuda_ptr, cuda_deref_ptr)
408 type(c_ptr),
intent(in) :: cuda_ptr
409 type(c_ptr),
intent(out) :: cuda_deref_ptr
416 type(c_ptr),
intent(inout) :: stream
417 integer,
intent(in) :: stream_number
424 integer,
intent(out) :: stream_number
431 use,
intrinsic :: iso_fortran_env
434 type(c_ptr),
intent(in) :: cuda_ptr
435 type(c_ptr),
intent(in) :: data
436 integer(int64),
intent(in) :: size
437 integer(int64),
intent(in) :: offset
444 use,
intrinsic :: iso_fortran_env
447 type(c_ptr),
intent(in) :: cuda_ptr
448 type(c_ptr),
intent(inout) :: data
449 integer(int64),
intent(in) :: size
450 integer(int64),
intent(in) :: offset
455 subroutine cuda_memcpy_dtod(cuda_ptr_dest, cuda_ptr_src, size, offset_dest, offset_src)
457 use,
intrinsic :: iso_fortran_env
460 type(c_ptr),
intent(inout) :: cuda_ptr_dest
461 type(c_ptr),
intent(in) :: cuda_ptr_src
462 integer(int64),
intent(in) :: size
463 integer(int64),
intent(in) :: offset_dest
464 integer(int64),
intent(in) :: offset_src
471 type(c_ptr),
intent(in) :: buffer
472 integer(8),
intent(in) :: offset
473 type(c_ptr),
intent(out) :: buffer_offset
480 type(c_ptr),
intent(in) :: buffer
integer, parameter, public cublas_side_left
integer, parameter, public cublas_fill_mode_upper
integer, parameter, public cublas_op_n
integer, parameter, public cublas_op_c
integer, parameter, public cublas_diag_non_unit
integer, parameter, public cublas_op_t
integer, parameter, public cublas_fill_mode_lower
integer, parameter, public cublas_side_right
integer, parameter, public cublas_diag_unit