Octopus
accel_oct_m Module Reference

Data Types

type  accel_context_t
 
interface  accel_create_blas_alpha_beta_buffer
 
interface  accel_create_buffer
 
type  accel_device_t
 
interface  accel_get_device_pointer
 
interface  accel_kernel_run
 
type  accel_kernel_t
 
type  accel_mem_t
 
interface  accel_padded_size
 
interface  accel_read_buffer
 
interface  accel_release_blas_alpha_beta_buffer
 
interface  accel_set_buffer_to_zero
 
interface  accel_set_kernel_arg
 
type  accel_t
 
interface  accel_write_buffer
 

Functions/Subroutines

pure logical function, public accel_is_enabled ()
 
pure logical function, public accel_allow_cpu_only ()
 
subroutine, public accel_init (base_grp, namespace)
 
subroutine, public accel_end (namespace)
 
integer(int64) function accel_padded_size_i8 (nn)
 
integer(int32) function accel_padded_size_i4 (nn)
 
subroutine accel_create_buffer_4 (this, flags, type, size, set_zero, async)
 
subroutine accel_create_buffer_8 (this, flags, type, size, set_zero, async)
 
subroutine, public accel_release_buffer (this, async)
 
subroutine, public accel_ensure_buffer_size (buffer, flags, type, required_size, set_zero, async)
 
logical pure function, public accel_buffer_is_allocated (this)
 
subroutine, public accel_finish ()
 
subroutine accel_set_kernel_arg_buffer (kernel, narg, buffer)
 
subroutine accel_set_kernel_arg_local (kernel, narg, type, size)
 
subroutine accel_kernel_run_8 (kernel, globalsizes, localsizes)
 
subroutine accel_kernel_run_4 (kernel, globalsizes, localsizes)
 
integer pure function, public accel_max_workgroup_size ()
 
integer function, public accel_kernel_workgroup_size (kernel)
 
subroutine, public clblas_print_error (ierr, name)
 
subroutine, public clfft_print_error (ierr, name)
 
subroutine accel_set_buffer_to (buffer, type, val, nval, offset, async)
 
subroutine accel_set_buffer_to_zero_i8 (buffer, type, nval, offset, async)
 
subroutine accel_set_buffer_to_zero_i4 (buffer, type, nval, offset, async)
 
subroutine opencl_check_bandwidth ()
 
logical pure function, public accel_use_shared_mem ()
 
subroutine accel_kernel_global_init ()
 
subroutine accel_kernel_global_end ()
 
subroutine, public accel_kernel_build (this, file_name, kernel_name, flags)
 
subroutine accel_kernel_end (this)
 
subroutine, public accel_kernel_start_call (this, file_name, kernel_name, flags)
 
integer(int64) pure function, public accel_global_memory_size ()
 
integer(int64) pure function, public accel_local_memory_size ()
 
integer pure function, public accel_max_size_per_dim (dim)
 
subroutine, public accel_set_stream (stream_number)
 
subroutine, public accel_get_stream (stream_number)
 
subroutine, public accel_synchronize_all_streams ()
 
type(c_ptr) function, public daccel_get_pointer_with_offset (buffer, offset)
 
type(c_ptr) function, public zaccel_get_pointer_with_offset (buffer, offset)
 
subroutine, public accel_clean_pointer (buffer)
 
subroutine, public accel_get_unfolded_size (size, grid_size, thread_block_size)
 Get unfolded size: some kernels (e.g. projectors) unfold the array across warps as an optimization. This is, however, only benefitial on Nvidia GPUs. More...
 
subroutine daccel_write_buffer_single (this, data, async)
 
subroutine daccel_write_buffer_0 (this, n1, data, offset, async)
 
subroutine daccel_write_buffer_1 (this, n1, data, offset, async)
 
subroutine daccel_write_buffer_2 (this, n1, n2, data, offset, async)
 
subroutine daccel_write_buffer_3 (this, n1, n2, n3, data, offset, async)
 
subroutine daccel_write_buffer_0_int32 (this, n1, data, offset, async)
 
subroutine daccel_write_buffer_1_int32 (this, n1, data, offset, async)
 
subroutine daccel_write_buffer_2_int32 (this, n1, n2, data, offset, async)
 
subroutine daccel_write_buffer_3_int32 (this, n1, n2, n3, data, offset, async)
 
subroutine daccel_read_buffer_0 (this, n1, data, offset, async)
 
subroutine daccel_read_buffer_1 (this, n1, data, offset, async)
 
subroutine daccel_read_buffer_2 (this, n1, n2, data, offset, async)
 
subroutine daccel_read_buffer_3 (this, n1, n2, n3, data, offset, async)
 
subroutine daccel_read_buffer_0_int32 (this, n1, data, offset, async)
 
subroutine daccel_read_buffer_1_int32 (this, n1, data, offset, async)
 
subroutine daccel_read_buffer_2_int32 (this, n1, n2, data, offset, async)
 
subroutine daccel_read_buffer_3_int32 (this, n1, n2, n3, data, offset, async)
 
subroutine daccel_set_kernel_arg_data (kernel, narg, data)
 
subroutine daccel_get_device_pointer_1 (host_pointer, device_pointer, dimensions)
 
subroutine daccel_get_device_pointer_2 (host_pointer, device_pointer, dimensions)
 
subroutine daccel_get_device_pointer_3 (host_pointer, device_pointer, dimensions)
 
subroutine daccel_get_device_pointer_1l (host_pointer, device_pointer, dimensions)
 
subroutine daccel_get_device_pointer_2l (host_pointer, device_pointer, dimensions)
 
subroutine daccel_get_device_pointer_3l (host_pointer, device_pointer, dimensions)
 
subroutine daccel_create_blas_alpha_beta_buffer (this, data, async)
 
subroutine daccel_release_blas_alpha_beta_buffer (this, data, async)
 
subroutine zaccel_write_buffer_single (this, data, async)
 
subroutine zaccel_write_buffer_0 (this, n1, data, offset, async)
 
subroutine zaccel_write_buffer_1 (this, n1, data, offset, async)
 
subroutine zaccel_write_buffer_2 (this, n1, n2, data, offset, async)
 
subroutine zaccel_write_buffer_3 (this, n1, n2, n3, data, offset, async)
 
subroutine zaccel_write_buffer_0_int32 (this, n1, data, offset, async)
 
subroutine zaccel_write_buffer_1_int32 (this, n1, data, offset, async)
 
subroutine zaccel_write_buffer_2_int32 (this, n1, n2, data, offset, async)
 
subroutine zaccel_write_buffer_3_int32 (this, n1, n2, n3, data, offset, async)
 
subroutine zaccel_read_buffer_0 (this, n1, data, offset, async)
 
subroutine zaccel_read_buffer_1 (this, n1, data, offset, async)
 
subroutine zaccel_read_buffer_2 (this, n1, n2, data, offset, async)
 
subroutine zaccel_read_buffer_3 (this, n1, n2, n3, data, offset, async)
 
subroutine zaccel_read_buffer_0_int32 (this, n1, data, offset, async)
 
subroutine zaccel_read_buffer_1_int32 (this, n1, data, offset, async)
 
subroutine zaccel_read_buffer_2_int32 (this, n1, n2, data, offset, async)
 
subroutine zaccel_read_buffer_3_int32 (this, n1, n2, n3, data, offset, async)
 
subroutine zaccel_set_kernel_arg_data (kernel, narg, data)
 
subroutine zaccel_get_device_pointer_1 (host_pointer, device_pointer, dimensions)
 
subroutine zaccel_get_device_pointer_2 (host_pointer, device_pointer, dimensions)
 
subroutine zaccel_get_device_pointer_3 (host_pointer, device_pointer, dimensions)
 
subroutine zaccel_get_device_pointer_1l (host_pointer, device_pointer, dimensions)
 
subroutine zaccel_get_device_pointer_2l (host_pointer, device_pointer, dimensions)
 
subroutine zaccel_get_device_pointer_3l (host_pointer, device_pointer, dimensions)
 
subroutine zaccel_create_blas_alpha_beta_buffer (this, data, async)
 
subroutine zaccel_release_blas_alpha_beta_buffer (this, data, async)
 
subroutine iaccel_write_buffer_single (this, data, async)
 
subroutine iaccel_write_buffer_0 (this, n1, data, offset, async)
 
subroutine iaccel_write_buffer_1 (this, n1, data, offset, async)
 
subroutine iaccel_write_buffer_2 (this, n1, n2, data, offset, async)
 
subroutine iaccel_write_buffer_3 (this, n1, n2, n3, data, offset, async)
 
subroutine iaccel_write_buffer_0_int32 (this, n1, data, offset, async)
 
subroutine iaccel_write_buffer_1_int32 (this, n1, data, offset, async)
 
subroutine iaccel_write_buffer_2_int32 (this, n1, n2, data, offset, async)
 
subroutine iaccel_write_buffer_3_int32 (this, n1, n2, n3, data, offset, async)
 
subroutine iaccel_read_buffer_0 (this, n1, data, offset, async)
 
subroutine iaccel_read_buffer_1 (this, n1, data, offset, async)
 
subroutine iaccel_read_buffer_2 (this, n1, n2, data, offset, async)
 
subroutine iaccel_read_buffer_3 (this, n1, n2, n3, data, offset, async)
 
subroutine iaccel_read_buffer_0_int32 (this, n1, data, offset, async)
 
subroutine iaccel_read_buffer_1_int32 (this, n1, data, offset, async)
 
subroutine iaccel_read_buffer_2_int32 (this, n1, n2, data, offset, async)
 
subroutine iaccel_read_buffer_3_int32 (this, n1, n2, n3, data, offset, async)
 
subroutine iaccel_set_kernel_arg_data (kernel, narg, data)
 
subroutine iaccel_get_device_pointer_1 (host_pointer, device_pointer, dimensions)
 
subroutine iaccel_get_device_pointer_2 (host_pointer, device_pointer, dimensions)
 
subroutine iaccel_get_device_pointer_3 (host_pointer, device_pointer, dimensions)
 
subroutine iaccel_get_device_pointer_1l (host_pointer, device_pointer, dimensions)
 
subroutine iaccel_get_device_pointer_2l (host_pointer, device_pointer, dimensions)
 
subroutine iaccel_get_device_pointer_3l (host_pointer, device_pointer, dimensions)
 
subroutine iaccel_create_blas_alpha_beta_buffer (this, data, async)
 
subroutine iaccel_release_blas_alpha_beta_buffer (this, data, async)
 
subroutine laccel_write_buffer_single (this, data, async)
 
subroutine laccel_write_buffer_0 (this, n1, data, offset, async)
 
subroutine laccel_write_buffer_1 (this, n1, data, offset, async)
 
subroutine laccel_write_buffer_2 (this, n1, n2, data, offset, async)
 
subroutine laccel_write_buffer_3 (this, n1, n2, n3, data, offset, async)
 
subroutine laccel_write_buffer_0_int32 (this, n1, data, offset, async)
 
subroutine laccel_write_buffer_1_int32 (this, n1, data, offset, async)
 
subroutine laccel_write_buffer_2_int32 (this, n1, n2, data, offset, async)
 
subroutine laccel_write_buffer_3_int32 (this, n1, n2, n3, data, offset, async)
 
subroutine laccel_read_buffer_0 (this, n1, data, offset, async)
 
subroutine laccel_read_buffer_1 (this, n1, data, offset, async)
 
subroutine laccel_read_buffer_2 (this, n1, n2, data, offset, async)
 
subroutine laccel_read_buffer_3 (this, n1, n2, n3, data, offset, async)
 
subroutine laccel_read_buffer_0_int32 (this, n1, data, offset, async)
 
subroutine laccel_read_buffer_1_int32 (this, n1, data, offset, async)
 
subroutine laccel_read_buffer_2_int32 (this, n1, n2, data, offset, async)
 
subroutine laccel_read_buffer_3_int32 (this, n1, n2, n3, data, offset, async)
 
subroutine laccel_set_kernel_arg_data (kernel, narg, data)
 
subroutine laccel_get_device_pointer_1 (host_pointer, device_pointer, dimensions)
 
subroutine laccel_get_device_pointer_2 (host_pointer, device_pointer, dimensions)
 
subroutine laccel_get_device_pointer_3 (host_pointer, device_pointer, dimensions)
 
subroutine laccel_get_device_pointer_1l (host_pointer, device_pointer, dimensions)
 
subroutine laccel_get_device_pointer_2l (host_pointer, device_pointer, dimensions)
 
subroutine laccel_get_device_pointer_3l (host_pointer, device_pointer, dimensions)
 
subroutine laccel_create_blas_alpha_beta_buffer (this, data, async)
 
subroutine laccel_release_blas_alpha_beta_buffer (this, data, async)
 

Variables

integer, parameter, public accel_mem_read_only = 0
 
integer, parameter, public accel_mem_read_write = 1
 
integer, parameter, public accel_mem_write_only = 2
 
type(accel_t), public accel
 
type(accel_mem_t), save, public zm_0_buffer
 
type(accel_mem_t), save, public zm_1_buffer
 
type(accel_mem_t), save, public dm_0_buffer
 
type(accel_mem_t), save, public dm_1_buffer
 
type(accel_kernel_t), target, save, public kernel_vpsi
 
type(accel_kernel_t), target, save, public kernel_vpsi_complex
 
type(accel_kernel_t), target, save, public kernel_vpsi_spinors
 
type(accel_kernel_t), target, save, public kernel_vpsi_spinors_complex
 
type(accel_kernel_t), target, save, public kernel_daxpy
 
type(accel_kernel_t), target, save, public kernel_zaxpy
 
type(accel_kernel_t), target, save, public kernel_copy
 
type(accel_kernel_t), target, save, public kernel_copy_complex_to_real
 
type(accel_kernel_t), target, save, public kernel_copy_real_to_complex
 
type(accel_kernel_t), target, save, public dpack
 
type(accel_kernel_t), target, save, public zpack
 
type(accel_kernel_t), target, save, public dunpack
 
type(accel_kernel_t), target, save, public zunpack
 
type(accel_kernel_t), target, save, public kernel_ghost_reorder
 
type(accel_kernel_t), target, save, public kernel_density_real
 
type(accel_kernel_t), target, save, public kernel_density_complex
 
type(accel_kernel_t), target, save, public kernel_density_spinors
 
type(accel_kernel_t), target, save, public kernel_phase
 
type(accel_kernel_t), target, save, public kernel_phase_spiral
 
type(accel_kernel_t), target, save, public dkernel_dot_matrix
 
type(accel_kernel_t), target, save, public zkernel_dot_matrix
 
type(accel_kernel_t), target, save, public zkernel_dot_matrix_spinors
 
type(accel_kernel_t), target, save, public dkernel_batch_axpy
 
type(accel_kernel_t), target, save, public zkernel_batch_axpy
 
type(accel_kernel_t), target, save, public dkernel_ax_function_py
 
type(accel_kernel_t), target, save, public zkernel_ax_function_py
 
type(accel_kernel_t), target, save, public dkernel_batch_dotp
 
type(accel_kernel_t), target, save, public zkernel_batch_dotp
 
type(accel_kernel_t), target, save, public dzmul
 
type(accel_kernel_t), target, save, public zzmul
 
integer, parameter opencl_gpu = -1
 
integer, parameter opencl_cpu = -2
 
integer, parameter opencl_accelerator = -3
 
integer, parameter opencl_default = -4
 
integer, parameter cl_plat_invalid = -1
 
integer, parameter cl_plat_amd = -2
 
integer, parameter cl_plat_nvidia = -3
 
integer, parameter cl_plat_ati = -4
 
integer, parameter cl_plat_intel = -5
 
integer, public cl_status
 
integer buffer_alloc_count
 
integer(int64) allocated_mem
 
type(accel_kernel_t), pointer head
 
type(alloc_cache_tmemcache
 

Function/Subroutine Documentation

◆ accel_is_enabled()

pure logical function, public accel_oct_m::accel_is_enabled

Definition at line 417 of file accel.F90.

◆ accel_allow_cpu_only()

pure logical function, public accel_oct_m::accel_allow_cpu_only

Definition at line 427 of file accel.F90.

◆ accel_init()

subroutine, public accel_oct_m::accel_init ( type(mpi_grp_t), intent(inout)  base_grp,
type(namespace_t), intent(in)  namespace 
)

Definition at line 437 of file accel.F90.

◆ accel_end()

subroutine, public accel_oct_m::accel_end ( type(namespace_t), intent(in)  namespace)

Definition at line 744 of file accel.F90.

◆ accel_padded_size_i8()

integer(int64) function accel_oct_m::accel_padded_size_i8 ( integer(int64), intent(in)  nn)
private

Definition at line 821 of file accel.F90.

◆ accel_padded_size_i4()

integer(int32) function accel_oct_m::accel_padded_size_i4 ( integer(int32), intent(in)  nn)
private

Definition at line 842 of file accel.F90.

◆ accel_create_buffer_4()

subroutine accel_oct_m::accel_create_buffer_4 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  flags,
type(type_t), intent(in)  type,
integer, intent(in)  size,
logical, intent(in), optional  set_zero,
logical, intent(in), optional  async 
)
private

Definition at line 851 of file accel.F90.

◆ accel_create_buffer_8()

subroutine accel_oct_m::accel_create_buffer_8 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  flags,
type(type_t), intent(in)  type,
integer(int64), intent(in)  size,
logical, intent(in), optional  set_zero,
logical, intent(in), optional  async 
)
private

Definition at line 864 of file accel.F90.

◆ accel_release_buffer()

subroutine, public accel_oct_m::accel_release_buffer ( type(accel_mem_t), intent(inout)  this,
logical, intent(in), optional  async 
)

Definition at line 917 of file accel.F90.

◆ accel_ensure_buffer_size()

subroutine, public accel_oct_m::accel_ensure_buffer_size ( type(accel_mem_t), intent(inout)  buffer,
integer, intent(in)  flags,
type(type_t), intent(in)  type,
integer, intent(in)  required_size,
logical, intent(in)  set_zero,
logical, intent(in), optional  async 
)

Definition at line 955 of file accel.F90.

◆ accel_buffer_is_allocated()

logical pure function, public accel_oct_m::accel_buffer_is_allocated ( type(accel_mem_t), intent(in)  this)

Definition at line 975 of file accel.F90.

◆ accel_finish()

subroutine, public accel_oct_m::accel_finish

Definition at line 983 of file accel.F90.

◆ accel_set_kernel_arg_buffer()

subroutine accel_oct_m::accel_set_kernel_arg_buffer ( type(accel_kernel_t), intent(inout)  kernel,
integer, intent(in)  narg,
type(accel_mem_t), intent(in)  buffer 
)
private

Definition at line 1003 of file accel.F90.

◆ accel_set_kernel_arg_local()

subroutine accel_oct_m::accel_set_kernel_arg_local ( type(accel_kernel_t), intent(inout)  kernel,
integer, intent(in)  narg,
type(type_t), intent(in)  type,
integer, intent(in)  size 
)
private

Definition at line 1020 of file accel.F90.

◆ accel_kernel_run_8()

subroutine accel_oct_m::accel_kernel_run_8 ( type(accel_kernel_t), intent(inout)  kernel,
integer(int64), dimension(:), intent(in)  globalsizes,
integer(int64), dimension(:), intent(in)  localsizes 
)
private

Definition at line 1050 of file accel.F90.

◆ accel_kernel_run_4()

subroutine accel_oct_m::accel_kernel_run_4 ( type(accel_kernel_t), intent(inout)  kernel,
integer, dimension(:), intent(in)  globalsizes,
integer, dimension(:), intent(in)  localsizes 
)
private

Definition at line 1086 of file accel.F90.

◆ accel_max_workgroup_size()

integer pure function, public accel_oct_m::accel_max_workgroup_size

Definition at line 1097 of file accel.F90.

◆ accel_kernel_workgroup_size()

integer function, public accel_oct_m::accel_kernel_workgroup_size ( type(accel_kernel_t), intent(inout)  kernel)

Definition at line 1103 of file accel.F90.

◆ clblas_print_error()

subroutine, public accel_oct_m::clblas_print_error ( integer, intent(in)  ierr,
character(len=*), intent(in)  name 
)

Definition at line 1120 of file accel.F90.

◆ clfft_print_error()

subroutine, public accel_oct_m::clfft_print_error ( integer, intent(in)  ierr,
character(len=*), intent(in)  name 
)

Definition at line 1135 of file accel.F90.

◆ accel_set_buffer_to()

subroutine accel_oct_m::accel_set_buffer_to ( type(accel_mem_t), intent(inout)  buffer,
type(type_t), intent(in)  type,
integer(int8), intent(in)  val,
integer(int64), intent(in)  nval,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1153 of file accel.F90.

◆ accel_set_buffer_to_zero_i8()

subroutine accel_oct_m::accel_set_buffer_to_zero_i8 ( type(accel_mem_t), intent(inout)  buffer,
type(type_t), intent(in)  type,
integer(int64), intent(in)  nval,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1202 of file accel.F90.

◆ accel_set_buffer_to_zero_i4()

subroutine accel_oct_m::accel_set_buffer_to_zero_i4 ( type(accel_mem_t), intent(inout)  buffer,
type(type_t), intent(in)  type,
integer(int32), intent(in)  nval,
integer(int32), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1218 of file accel.F90.

◆ opencl_check_bandwidth()

subroutine accel_oct_m::opencl_check_bandwidth
private

Definition at line 1238 of file accel.F90.

◆ accel_use_shared_mem()

logical pure function, public accel_oct_m::accel_use_shared_mem

Definition at line 1297 of file accel.F90.

◆ accel_kernel_global_init()

subroutine accel_oct_m::accel_kernel_global_init
private

Definition at line 1305 of file accel.F90.

◆ accel_kernel_global_end()

subroutine accel_oct_m::accel_kernel_global_end
private

Definition at line 1318 of file accel.F90.

◆ accel_kernel_build()

subroutine, public accel_oct_m::accel_kernel_build ( type(accel_kernel_t), intent(inout)  this,
character(len=*), intent(in)  file_name,
character(len=*), intent(in)  kernel_name,
character(len=*), intent(in), optional  flags 
)

Definition at line 1339 of file accel.F90.

◆ accel_kernel_end()

subroutine accel_oct_m::accel_kernel_end ( type(accel_kernel_t), intent(inout)  this)
private

Definition at line 1359 of file accel.F90.

◆ accel_kernel_start_call()

subroutine, public accel_oct_m::accel_kernel_start_call ( type(accel_kernel_t), intent(inout), target  this,
character(len=*), intent(in)  file_name,
character(len=*), intent(in)  kernel_name,
character(len=*), intent(in), optional  flags 
)

Definition at line 1374 of file accel.F90.

◆ accel_global_memory_size()

integer(int64) pure function, public accel_oct_m::accel_global_memory_size

Definition at line 1393 of file accel.F90.

◆ accel_local_memory_size()

integer(int64) pure function, public accel_oct_m::accel_local_memory_size

Definition at line 1401 of file accel.F90.

◆ accel_max_size_per_dim()

integer pure function, public accel_oct_m::accel_max_size_per_dim ( integer, intent(in)  dim)

Definition at line 1409 of file accel.F90.

◆ accel_set_stream()

subroutine, public accel_oct_m::accel_set_stream ( integer, intent(in)  stream_number)

Definition at line 1418 of file accel.F90.

◆ accel_get_stream()

subroutine, public accel_oct_m::accel_get_stream ( integer, intent(inout)  stream_number)

Definition at line 1435 of file accel.F90.

◆ accel_synchronize_all_streams()

subroutine, public accel_oct_m::accel_synchronize_all_streams

Definition at line 1451 of file accel.F90.

◆ daccel_get_pointer_with_offset()

type(c_ptr) function, public accel_oct_m::daccel_get_pointer_with_offset ( type(c_ptr), intent(in)  buffer,
integer(int64), intent(in)  offset 
)

Definition at line 1463 of file accel.F90.

◆ zaccel_get_pointer_with_offset()

type(c_ptr) function, public accel_oct_m::zaccel_get_pointer_with_offset ( type(c_ptr), intent(in)  buffer,
integer(int64), intent(in)  offset 
)

Definition at line 1478 of file accel.F90.

◆ accel_clean_pointer()

subroutine, public accel_oct_m::accel_clean_pointer ( type(c_ptr), intent(in)  buffer)

Definition at line 1493 of file accel.F90.

◆ accel_get_unfolded_size()

subroutine, public accel_oct_m::accel_get_unfolded_size ( integer(int64), intent(in)  size,
integer(int64), intent(out)  grid_size,
integer(int64), intent(out)  thread_block_size 
)

Get unfolded size: some kernels (e.g. projectors) unfold the array across warps as an optimization. This is, however, only benefitial on Nvidia GPUs.

Definition at line 1506 of file accel.F90.

◆ daccel_write_buffer_single()

subroutine accel_oct_m::daccel_write_buffer_single ( type(accel_mem_t), intent(inout)  this,
real(real64), intent(in)  data,
logical, intent(in), optional  async 
)
private

Definition at line 1591 of file accel.F90.

◆ daccel_write_buffer_0()

subroutine accel_oct_m::daccel_write_buffer_0 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
real(real64), intent(in), target  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1604 of file accel.F90.

◆ daccel_write_buffer_1()

subroutine accel_oct_m::daccel_write_buffer_1 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
real(real64), dimension(:), intent(in), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1643 of file accel.F90.

◆ daccel_write_buffer_2()

subroutine accel_oct_m::daccel_write_buffer_2 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
real(real64), dimension(:, :), intent(in), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1662 of file accel.F90.

◆ daccel_write_buffer_3()

subroutine accel_oct_m::daccel_write_buffer_3 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
integer(int64), intent(in)  n3,
real(real64), dimension(:, :, :), intent(in), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1693 of file accel.F90.

◆ daccel_write_buffer_0_int32()

subroutine accel_oct_m::daccel_write_buffer_0_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
real(real64), intent(in)  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1717 of file accel.F90.

◆ daccel_write_buffer_1_int32()

subroutine accel_oct_m::daccel_write_buffer_1_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
real(real64), dimension(:), intent(in), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1736 of file accel.F90.

◆ daccel_write_buffer_2_int32()

subroutine accel_oct_m::daccel_write_buffer_2_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
real(real64), dimension(:, :), intent(in), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1755 of file accel.F90.

◆ daccel_write_buffer_3_int32()

subroutine accel_oct_m::daccel_write_buffer_3_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
integer, intent(in)  n3,
real(real64), dimension(:, :, :), intent(in), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1794 of file accel.F90.

◆ daccel_read_buffer_0()

subroutine accel_oct_m::daccel_read_buffer_0 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
real(real64), intent(out), target  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1822 of file accel.F90.

◆ daccel_read_buffer_1()

subroutine accel_oct_m::daccel_read_buffer_1 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
real(real64), dimension(:), intent(out), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1861 of file accel.F90.

◆ daccel_read_buffer_2()

subroutine accel_oct_m::daccel_read_buffer_2 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
real(real64), dimension(:, :), intent(out), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1880 of file accel.F90.

◆ daccel_read_buffer_3()

subroutine accel_oct_m::daccel_read_buffer_3 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
integer(int64), intent(in)  n3,
real(real64), dimension(:, :, :), intent(out), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1911 of file accel.F90.

◆ daccel_read_buffer_0_int32()

subroutine accel_oct_m::daccel_read_buffer_0_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
real(real64), intent(out)  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1935 of file accel.F90.

◆ daccel_read_buffer_1_int32()

subroutine accel_oct_m::daccel_read_buffer_1_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
real(real64), dimension(:), intent(out), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1954 of file accel.F90.

◆ daccel_read_buffer_2_int32()

subroutine accel_oct_m::daccel_read_buffer_2_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
real(real64), dimension(:, :), intent(out), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 1973 of file accel.F90.

◆ daccel_read_buffer_3_int32()

subroutine accel_oct_m::daccel_read_buffer_3_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
integer, intent(in)  n3,
real(real64), dimension(:, :, :), intent(out), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2012 of file accel.F90.

◆ daccel_set_kernel_arg_data()

subroutine accel_oct_m::daccel_set_kernel_arg_data ( type(accel_kernel_t), intent(inout)  kernel,
integer, intent(in)  narg,
real(real64), intent(in), target  data 
)
private

Definition at line 2041 of file accel.F90.

◆ daccel_get_device_pointer_1()

subroutine accel_oct_m::daccel_get_device_pointer_1 ( real(real64), dimension(:), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer, dimension(:), intent(in)  dimensions 
)
private

Definition at line 2058 of file accel.F90.

◆ daccel_get_device_pointer_2()

subroutine accel_oct_m::daccel_get_device_pointer_2 ( real(real64), dimension(:, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer, dimension(:), intent(in)  dimensions 
)
private

Definition at line 2082 of file accel.F90.

◆ daccel_get_device_pointer_3()

subroutine accel_oct_m::daccel_get_device_pointer_3 ( real(real64), dimension(:, :, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer, dimension(:), intent(in)  dimensions 
)
private

Definition at line 2104 of file accel.F90.

◆ daccel_get_device_pointer_1l()

subroutine accel_oct_m::daccel_get_device_pointer_1l ( real(real64), dimension(:), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer(int64), dimension(:), intent(in)  dimensions 
)
private

Definition at line 2126 of file accel.F90.

◆ daccel_get_device_pointer_2l()

subroutine accel_oct_m::daccel_get_device_pointer_2l ( real(real64), dimension(:, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer(int64), dimension(:), intent(in)  dimensions 
)
private

Definition at line 2149 of file accel.F90.

◆ daccel_get_device_pointer_3l()

subroutine accel_oct_m::daccel_get_device_pointer_3l ( real(real64), dimension(:, :, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer(int64), dimension(:), intent(in)  dimensions 
)
private

Definition at line 2171 of file accel.F90.

◆ daccel_create_blas_alpha_beta_buffer()

subroutine accel_oct_m::daccel_create_blas_alpha_beta_buffer ( type(accel_mem_t), intent(inout)  this,
real(real64), intent(in)  data,
logical, intent(in), optional  async 
)
private

Definition at line 2194 of file accel.F90.

◆ daccel_release_blas_alpha_beta_buffer()

subroutine accel_oct_m::daccel_release_blas_alpha_beta_buffer ( type(accel_mem_t), intent(inout)  this,
real(real64), intent(in)  data,
logical, intent(in), optional  async 
)
private

Definition at line 2221 of file accel.F90.

◆ zaccel_write_buffer_single()

subroutine accel_oct_m::zaccel_write_buffer_single ( type(accel_mem_t), intent(inout)  this,
complex(real64), intent(in)  data,
logical, intent(in), optional  async 
)
private

Definition at line 2313 of file accel.F90.

◆ zaccel_write_buffer_0()

subroutine accel_oct_m::zaccel_write_buffer_0 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
complex(real64), intent(in), target  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2326 of file accel.F90.

◆ zaccel_write_buffer_1()

subroutine accel_oct_m::zaccel_write_buffer_1 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
complex(real64), dimension(:), intent(in), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2365 of file accel.F90.

◆ zaccel_write_buffer_2()

subroutine accel_oct_m::zaccel_write_buffer_2 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
complex(real64), dimension(:, :), intent(in), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2384 of file accel.F90.

◆ zaccel_write_buffer_3()

subroutine accel_oct_m::zaccel_write_buffer_3 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
integer(int64), intent(in)  n3,
complex(real64), dimension(:, :, :), intent(in), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2415 of file accel.F90.

◆ zaccel_write_buffer_0_int32()

subroutine accel_oct_m::zaccel_write_buffer_0_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
complex(real64), intent(in)  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2439 of file accel.F90.

◆ zaccel_write_buffer_1_int32()

subroutine accel_oct_m::zaccel_write_buffer_1_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
complex(real64), dimension(:), intent(in), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2458 of file accel.F90.

◆ zaccel_write_buffer_2_int32()

subroutine accel_oct_m::zaccel_write_buffer_2_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
complex(real64), dimension(:, :), intent(in), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2477 of file accel.F90.

◆ zaccel_write_buffer_3_int32()

subroutine accel_oct_m::zaccel_write_buffer_3_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
integer, intent(in)  n3,
complex(real64), dimension(:, :, :), intent(in), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2516 of file accel.F90.

◆ zaccel_read_buffer_0()

subroutine accel_oct_m::zaccel_read_buffer_0 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
complex(real64), intent(out), target  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2544 of file accel.F90.

◆ zaccel_read_buffer_1()

subroutine accel_oct_m::zaccel_read_buffer_1 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
complex(real64), dimension(:), intent(out), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2583 of file accel.F90.

◆ zaccel_read_buffer_2()

subroutine accel_oct_m::zaccel_read_buffer_2 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
complex(real64), dimension(:, :), intent(out), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2602 of file accel.F90.

◆ zaccel_read_buffer_3()

subroutine accel_oct_m::zaccel_read_buffer_3 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
integer(int64), intent(in)  n3,
complex(real64), dimension(:, :, :), intent(out), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2633 of file accel.F90.

◆ zaccel_read_buffer_0_int32()

subroutine accel_oct_m::zaccel_read_buffer_0_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
complex(real64), intent(out)  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2657 of file accel.F90.

◆ zaccel_read_buffer_1_int32()

subroutine accel_oct_m::zaccel_read_buffer_1_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
complex(real64), dimension(:), intent(out), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2676 of file accel.F90.

◆ zaccel_read_buffer_2_int32()

subroutine accel_oct_m::zaccel_read_buffer_2_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
complex(real64), dimension(:, :), intent(out), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2695 of file accel.F90.

◆ zaccel_read_buffer_3_int32()

subroutine accel_oct_m::zaccel_read_buffer_3_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
integer, intent(in)  n3,
complex(real64), dimension(:, :, :), intent(out), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 2734 of file accel.F90.

◆ zaccel_set_kernel_arg_data()

subroutine accel_oct_m::zaccel_set_kernel_arg_data ( type(accel_kernel_t), intent(inout)  kernel,
integer, intent(in)  narg,
complex(real64), intent(in), target  data 
)
private

Definition at line 2763 of file accel.F90.

◆ zaccel_get_device_pointer_1()

subroutine accel_oct_m::zaccel_get_device_pointer_1 ( complex(real64), dimension(:), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer, dimension(:), intent(in)  dimensions 
)
private

Definition at line 2780 of file accel.F90.

◆ zaccel_get_device_pointer_2()

subroutine accel_oct_m::zaccel_get_device_pointer_2 ( complex(real64), dimension(:, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer, dimension(:), intent(in)  dimensions 
)
private

Definition at line 2804 of file accel.F90.

◆ zaccel_get_device_pointer_3()

subroutine accel_oct_m::zaccel_get_device_pointer_3 ( complex(real64), dimension(:, :, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer, dimension(:), intent(in)  dimensions 
)
private

Definition at line 2826 of file accel.F90.

◆ zaccel_get_device_pointer_1l()

subroutine accel_oct_m::zaccel_get_device_pointer_1l ( complex(real64), dimension(:), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer(int64), dimension(:), intent(in)  dimensions 
)
private

Definition at line 2848 of file accel.F90.

◆ zaccel_get_device_pointer_2l()

subroutine accel_oct_m::zaccel_get_device_pointer_2l ( complex(real64), dimension(:, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer(int64), dimension(:), intent(in)  dimensions 
)
private

Definition at line 2871 of file accel.F90.

◆ zaccel_get_device_pointer_3l()

subroutine accel_oct_m::zaccel_get_device_pointer_3l ( complex(real64), dimension(:, :, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer(int64), dimension(:), intent(in)  dimensions 
)
private

Definition at line 2893 of file accel.F90.

◆ zaccel_create_blas_alpha_beta_buffer()

subroutine accel_oct_m::zaccel_create_blas_alpha_beta_buffer ( type(accel_mem_t), intent(inout)  this,
complex(real64), intent(in)  data,
logical, intent(in), optional  async 
)
private

Definition at line 2916 of file accel.F90.

◆ zaccel_release_blas_alpha_beta_buffer()

subroutine accel_oct_m::zaccel_release_blas_alpha_beta_buffer ( type(accel_mem_t), intent(inout)  this,
complex(real64), intent(in)  data,
logical, intent(in), optional  async 
)
private

Definition at line 2943 of file accel.F90.

◆ iaccel_write_buffer_single()

subroutine accel_oct_m::iaccel_write_buffer_single ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  data,
logical, intent(in), optional  async 
)
private

Definition at line 3035 of file accel.F90.

◆ iaccel_write_buffer_0()

subroutine accel_oct_m::iaccel_write_buffer_0 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
integer, intent(in), target  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3048 of file accel.F90.

◆ iaccel_write_buffer_1()

subroutine accel_oct_m::iaccel_write_buffer_1 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
integer, dimension(:), intent(in), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3087 of file accel.F90.

◆ iaccel_write_buffer_2()

subroutine accel_oct_m::iaccel_write_buffer_2 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
integer, dimension(:, :), intent(in), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3106 of file accel.F90.

◆ iaccel_write_buffer_3()

subroutine accel_oct_m::iaccel_write_buffer_3 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
integer(int64), intent(in)  n3,
integer, dimension(:, :, :), intent(in), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3137 of file accel.F90.

◆ iaccel_write_buffer_0_int32()

subroutine accel_oct_m::iaccel_write_buffer_0_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
integer, intent(in)  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3161 of file accel.F90.

◆ iaccel_write_buffer_1_int32()

subroutine accel_oct_m::iaccel_write_buffer_1_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
integer, dimension(:), intent(in), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3180 of file accel.F90.

◆ iaccel_write_buffer_2_int32()

subroutine accel_oct_m::iaccel_write_buffer_2_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
integer, dimension(:, :), intent(in), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3199 of file accel.F90.

◆ iaccel_write_buffer_3_int32()

subroutine accel_oct_m::iaccel_write_buffer_3_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
integer, intent(in)  n3,
integer, dimension(:, :, :), intent(in), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3238 of file accel.F90.

◆ iaccel_read_buffer_0()

subroutine accel_oct_m::iaccel_read_buffer_0 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
integer, intent(out), target  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3266 of file accel.F90.

◆ iaccel_read_buffer_1()

subroutine accel_oct_m::iaccel_read_buffer_1 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
integer, dimension(:), intent(out), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3305 of file accel.F90.

◆ iaccel_read_buffer_2()

subroutine accel_oct_m::iaccel_read_buffer_2 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
integer, dimension(:, :), intent(out), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3324 of file accel.F90.

◆ iaccel_read_buffer_3()

subroutine accel_oct_m::iaccel_read_buffer_3 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
integer(int64), intent(in)  n3,
integer, dimension(:, :, :), intent(out), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3355 of file accel.F90.

◆ iaccel_read_buffer_0_int32()

subroutine accel_oct_m::iaccel_read_buffer_0_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
integer, intent(out)  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3379 of file accel.F90.

◆ iaccel_read_buffer_1_int32()

subroutine accel_oct_m::iaccel_read_buffer_1_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
integer, dimension(:), intent(out), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3398 of file accel.F90.

◆ iaccel_read_buffer_2_int32()

subroutine accel_oct_m::iaccel_read_buffer_2_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
integer, dimension(:, :), intent(out), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3417 of file accel.F90.

◆ iaccel_read_buffer_3_int32()

subroutine accel_oct_m::iaccel_read_buffer_3_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
integer, intent(in)  n3,
integer, dimension(:, :, :), intent(out), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3456 of file accel.F90.

◆ iaccel_set_kernel_arg_data()

subroutine accel_oct_m::iaccel_set_kernel_arg_data ( type(accel_kernel_t), intent(inout)  kernel,
integer, intent(in)  narg,
integer, intent(in), target  data 
)
private

Definition at line 3485 of file accel.F90.

◆ iaccel_get_device_pointer_1()

subroutine accel_oct_m::iaccel_get_device_pointer_1 ( integer, dimension(:), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer, dimension(:), intent(in)  dimensions 
)
private

Definition at line 3502 of file accel.F90.

◆ iaccel_get_device_pointer_2()

subroutine accel_oct_m::iaccel_get_device_pointer_2 ( integer, dimension(:, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer, dimension(:), intent(in)  dimensions 
)
private

Definition at line 3526 of file accel.F90.

◆ iaccel_get_device_pointer_3()

subroutine accel_oct_m::iaccel_get_device_pointer_3 ( integer, dimension(:, :, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer, dimension(:), intent(in)  dimensions 
)
private

Definition at line 3548 of file accel.F90.

◆ iaccel_get_device_pointer_1l()

subroutine accel_oct_m::iaccel_get_device_pointer_1l ( integer, dimension(:), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer(int64), dimension(:), intent(in)  dimensions 
)
private

Definition at line 3570 of file accel.F90.

◆ iaccel_get_device_pointer_2l()

subroutine accel_oct_m::iaccel_get_device_pointer_2l ( integer, dimension(:, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer(int64), dimension(:), intent(in)  dimensions 
)
private

Definition at line 3593 of file accel.F90.

◆ iaccel_get_device_pointer_3l()

subroutine accel_oct_m::iaccel_get_device_pointer_3l ( integer, dimension(:, :, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer(int64), dimension(:), intent(in)  dimensions 
)
private

Definition at line 3615 of file accel.F90.

◆ iaccel_create_blas_alpha_beta_buffer()

subroutine accel_oct_m::iaccel_create_blas_alpha_beta_buffer ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  data,
logical, intent(in), optional  async 
)
private

Definition at line 3638 of file accel.F90.

◆ iaccel_release_blas_alpha_beta_buffer()

subroutine accel_oct_m::iaccel_release_blas_alpha_beta_buffer ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  data,
logical, intent(in), optional  async 
)
private

Definition at line 3665 of file accel.F90.

◆ laccel_write_buffer_single()

subroutine accel_oct_m::laccel_write_buffer_single ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  data,
logical, intent(in), optional  async 
)
private

Definition at line 3758 of file accel.F90.

◆ laccel_write_buffer_0()

subroutine accel_oct_m::laccel_write_buffer_0 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in), target  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3771 of file accel.F90.

◆ laccel_write_buffer_1()

subroutine accel_oct_m::laccel_write_buffer_1 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
integer(int64), dimension(:), intent(in), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3810 of file accel.F90.

◆ laccel_write_buffer_2()

subroutine accel_oct_m::laccel_write_buffer_2 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
integer(int64), dimension(:, :), intent(in), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3829 of file accel.F90.

◆ laccel_write_buffer_3()

subroutine accel_oct_m::laccel_write_buffer_3 ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
integer(int64), intent(in)  n3,
integer(int64), dimension(:, :, :), intent(in), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3860 of file accel.F90.

◆ laccel_write_buffer_0_int32()

subroutine accel_oct_m::laccel_write_buffer_0_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
integer(int64), intent(in)  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3884 of file accel.F90.

◆ laccel_write_buffer_1_int32()

subroutine accel_oct_m::laccel_write_buffer_1_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
integer(int64), dimension(:), intent(in), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3903 of file accel.F90.

◆ laccel_write_buffer_2_int32()

subroutine accel_oct_m::laccel_write_buffer_2_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
integer(int64), dimension(:, :), intent(in), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3922 of file accel.F90.

◆ laccel_write_buffer_3_int32()

subroutine accel_oct_m::laccel_write_buffer_3_int32 ( type(accel_mem_t), intent(inout)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
integer, intent(in)  n3,
integer(int64), dimension(:, :, :), intent(in), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3961 of file accel.F90.

◆ laccel_read_buffer_0()

subroutine accel_oct_m::laccel_read_buffer_0 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(out), target  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 3989 of file accel.F90.

◆ laccel_read_buffer_1()

subroutine accel_oct_m::laccel_read_buffer_1 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
integer(int64), dimension(:), intent(out), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 4028 of file accel.F90.

◆ laccel_read_buffer_2()

subroutine accel_oct_m::laccel_read_buffer_2 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
integer(int64), dimension(:, :), intent(out), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 4047 of file accel.F90.

◆ laccel_read_buffer_3()

subroutine accel_oct_m::laccel_read_buffer_3 ( type(accel_mem_t), intent(in)  this,
integer(int64), intent(in)  n1,
integer(int64), intent(in)  n2,
integer(int64), intent(in)  n3,
integer(int64), dimension(:, :, :), intent(out), contiguous  data,
integer(int64), intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 4078 of file accel.F90.

◆ laccel_read_buffer_0_int32()

subroutine accel_oct_m::laccel_read_buffer_0_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
integer(int64), intent(out)  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 4102 of file accel.F90.

◆ laccel_read_buffer_1_int32()

subroutine accel_oct_m::laccel_read_buffer_1_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
integer(int64), dimension(:), intent(out), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 4121 of file accel.F90.

◆ laccel_read_buffer_2_int32()

subroutine accel_oct_m::laccel_read_buffer_2_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
integer(int64), dimension(:, :), intent(out), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 4140 of file accel.F90.

◆ laccel_read_buffer_3_int32()

subroutine accel_oct_m::laccel_read_buffer_3_int32 ( type(accel_mem_t), intent(in)  this,
integer, intent(in)  n1,
integer, intent(in)  n2,
integer, intent(in)  n3,
integer(int64), dimension(:, :, :), intent(out), contiguous  data,
integer, intent(in), optional  offset,
logical, intent(in), optional  async 
)
private

Definition at line 4179 of file accel.F90.

◆ laccel_set_kernel_arg_data()

subroutine accel_oct_m::laccel_set_kernel_arg_data ( type(accel_kernel_t), intent(inout)  kernel,
integer, intent(in)  narg,
integer(int64), intent(in), target  data 
)
private

Definition at line 4208 of file accel.F90.

◆ laccel_get_device_pointer_1()

subroutine accel_oct_m::laccel_get_device_pointer_1 ( integer(int64), dimension(:), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer, dimension(:), intent(in)  dimensions 
)
private

Definition at line 4225 of file accel.F90.

◆ laccel_get_device_pointer_2()

subroutine accel_oct_m::laccel_get_device_pointer_2 ( integer(int64), dimension(:, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer, dimension(:), intent(in)  dimensions 
)
private

Definition at line 4249 of file accel.F90.

◆ laccel_get_device_pointer_3()

subroutine accel_oct_m::laccel_get_device_pointer_3 ( integer(int64), dimension(:, :, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer, dimension(:), intent(in)  dimensions 
)
private

Definition at line 4271 of file accel.F90.

◆ laccel_get_device_pointer_1l()

subroutine accel_oct_m::laccel_get_device_pointer_1l ( integer(int64), dimension(:), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer(int64), dimension(:), intent(in)  dimensions 
)
private

Definition at line 4293 of file accel.F90.

◆ laccel_get_device_pointer_2l()

subroutine accel_oct_m::laccel_get_device_pointer_2l ( integer(int64), dimension(:, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer(int64), dimension(:), intent(in)  dimensions 
)
private

Definition at line 4316 of file accel.F90.

◆ laccel_get_device_pointer_3l()

subroutine accel_oct_m::laccel_get_device_pointer_3l ( integer(int64), dimension(:, :, :), intent(inout), pointer  host_pointer,
type(accel_mem_t), intent(in)  device_pointer,
integer(int64), dimension(:), intent(in)  dimensions 
)
private

Definition at line 4338 of file accel.F90.

◆ laccel_create_blas_alpha_beta_buffer()

subroutine accel_oct_m::laccel_create_blas_alpha_beta_buffer ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  data,
logical, intent(in), optional  async 
)
private

Definition at line 4361 of file accel.F90.

◆ laccel_release_blas_alpha_beta_buffer()

subroutine accel_oct_m::laccel_release_blas_alpha_beta_buffer ( type(accel_mem_t), intent(inout)  this,
integer(int64), intent(in)  data,
logical, intent(in), optional  async 
)
private

Definition at line 4388 of file accel.F90.

Variable Documentation

◆ accel_mem_read_only

integer, parameter, public accel_oct_m::accel_mem_read_only = 0

Definition at line 195 of file accel.F90.

◆ accel_mem_read_write

integer, parameter, public accel_oct_m::accel_mem_read_write = 1

Definition at line 195 of file accel.F90.

◆ accel_mem_write_only

integer, parameter, public accel_oct_m::accel_mem_write_only = 2

Definition at line 195 of file accel.F90.

◆ accel

type(accel_t), public accel_oct_m::accel

Definition at line 270 of file accel.F90.

◆ zm_0_buffer

type(accel_mem_t), save, public accel_oct_m::zm_0_buffer

Definition at line 273 of file accel.F90.

◆ zm_1_buffer

type(accel_mem_t), save, public accel_oct_m::zm_1_buffer

Definition at line 273 of file accel.F90.

◆ dm_0_buffer

type(accel_mem_t), save, public accel_oct_m::dm_0_buffer

Definition at line 274 of file accel.F90.

◆ dm_1_buffer

type(accel_mem_t), save, public accel_oct_m::dm_1_buffer

Definition at line 274 of file accel.F90.

◆ kernel_vpsi

type(accel_kernel_t), target, save, public accel_oct_m::kernel_vpsi

Definition at line 277 of file accel.F90.

◆ kernel_vpsi_complex

type(accel_kernel_t), target, save, public accel_oct_m::kernel_vpsi_complex

Definition at line 278 of file accel.F90.

◆ kernel_vpsi_spinors

type(accel_kernel_t), target, save, public accel_oct_m::kernel_vpsi_spinors

Definition at line 279 of file accel.F90.

◆ kernel_vpsi_spinors_complex

type(accel_kernel_t), target, save, public accel_oct_m::kernel_vpsi_spinors_complex

Definition at line 280 of file accel.F90.

◆ kernel_daxpy

type(accel_kernel_t), target, save, public accel_oct_m::kernel_daxpy

Definition at line 281 of file accel.F90.

◆ kernel_zaxpy

type(accel_kernel_t), target, save, public accel_oct_m::kernel_zaxpy

Definition at line 282 of file accel.F90.

◆ kernel_copy

type(accel_kernel_t), target, save, public accel_oct_m::kernel_copy

Definition at line 283 of file accel.F90.

◆ kernel_copy_complex_to_real

type(accel_kernel_t), target, save, public accel_oct_m::kernel_copy_complex_to_real

Definition at line 284 of file accel.F90.

◆ kernel_copy_real_to_complex

type(accel_kernel_t), target, save, public accel_oct_m::kernel_copy_real_to_complex

Definition at line 285 of file accel.F90.

◆ dpack

type(accel_kernel_t), target, save, public accel_oct_m::dpack

Definition at line 286 of file accel.F90.

◆ zpack

type(accel_kernel_t), target, save, public accel_oct_m::zpack

Definition at line 287 of file accel.F90.

◆ dunpack

type(accel_kernel_t), target, save, public accel_oct_m::dunpack

Definition at line 288 of file accel.F90.

◆ zunpack

type(accel_kernel_t), target, save, public accel_oct_m::zunpack

Definition at line 289 of file accel.F90.

◆ kernel_ghost_reorder

type(accel_kernel_t), target, save, public accel_oct_m::kernel_ghost_reorder

Definition at line 290 of file accel.F90.

◆ kernel_density_real

type(accel_kernel_t), target, save, public accel_oct_m::kernel_density_real

Definition at line 291 of file accel.F90.

◆ kernel_density_complex

type(accel_kernel_t), target, save, public accel_oct_m::kernel_density_complex

Definition at line 292 of file accel.F90.

◆ kernel_density_spinors

type(accel_kernel_t), target, save, public accel_oct_m::kernel_density_spinors

Definition at line 293 of file accel.F90.

◆ kernel_phase

type(accel_kernel_t), target, save, public accel_oct_m::kernel_phase

Definition at line 294 of file accel.F90.

◆ kernel_phase_spiral

type(accel_kernel_t), target, save, public accel_oct_m::kernel_phase_spiral

Definition at line 295 of file accel.F90.

◆ dkernel_dot_matrix

type(accel_kernel_t), target, save, public accel_oct_m::dkernel_dot_matrix

Definition at line 296 of file accel.F90.

◆ zkernel_dot_matrix

type(accel_kernel_t), target, save, public accel_oct_m::zkernel_dot_matrix

Definition at line 297 of file accel.F90.

◆ zkernel_dot_matrix_spinors

type(accel_kernel_t), target, save, public accel_oct_m::zkernel_dot_matrix_spinors

Definition at line 298 of file accel.F90.

◆ dkernel_batch_axpy

type(accel_kernel_t), target, save, public accel_oct_m::dkernel_batch_axpy

Definition at line 299 of file accel.F90.

◆ zkernel_batch_axpy

type(accel_kernel_t), target, save, public accel_oct_m::zkernel_batch_axpy

Definition at line 300 of file accel.F90.

◆ dkernel_ax_function_py

type(accel_kernel_t), target, save, public accel_oct_m::dkernel_ax_function_py

Definition at line 301 of file accel.F90.

◆ zkernel_ax_function_py

type(accel_kernel_t), target, save, public accel_oct_m::zkernel_ax_function_py

Definition at line 302 of file accel.F90.

◆ dkernel_batch_dotp

type(accel_kernel_t), target, save, public accel_oct_m::dkernel_batch_dotp

Definition at line 303 of file accel.F90.

◆ zkernel_batch_dotp

type(accel_kernel_t), target, save, public accel_oct_m::zkernel_batch_dotp

Definition at line 304 of file accel.F90.

◆ dzmul

type(accel_kernel_t), target, save, public accel_oct_m::dzmul

Definition at line 305 of file accel.F90.

◆ zzmul

type(accel_kernel_t), target, save, public accel_oct_m::zzmul

Definition at line 306 of file accel.F90.

◆ opencl_gpu

integer, parameter accel_oct_m::opencl_gpu = -1
private

Definition at line 393 of file accel.F90.

◆ opencl_cpu

integer, parameter accel_oct_m::opencl_cpu = -2
private

Definition at line 393 of file accel.F90.

◆ opencl_accelerator

integer, parameter accel_oct_m::opencl_accelerator = -3
private

Definition at line 393 of file accel.F90.

◆ opencl_default

integer, parameter accel_oct_m::opencl_default = -4
private

Definition at line 393 of file accel.F90.

◆ cl_plat_invalid

integer, parameter accel_oct_m::cl_plat_invalid = -1
private

Definition at line 400 of file accel.F90.

◆ cl_plat_amd

integer, parameter accel_oct_m::cl_plat_amd = -2
private

Definition at line 400 of file accel.F90.

◆ cl_plat_nvidia

integer, parameter accel_oct_m::cl_plat_nvidia = -3
private

Definition at line 400 of file accel.F90.

◆ cl_plat_ati

integer, parameter accel_oct_m::cl_plat_ati = -4
private

Definition at line 400 of file accel.F90.

◆ cl_plat_intel

integer, parameter accel_oct_m::cl_plat_intel = -5
private

Definition at line 400 of file accel.F90.

◆ cl_status

integer, public accel_oct_m::cl_status

Definition at line 408 of file accel.F90.

◆ buffer_alloc_count

integer accel_oct_m::buffer_alloc_count
private

Definition at line 410 of file accel.F90.

◆ allocated_mem

integer(int64) accel_oct_m::allocated_mem
private

Definition at line 411 of file accel.F90.

◆ head

type(accel_kernel_t), pointer accel_oct_m::head
private

Definition at line 412 of file accel.F90.

◆ memcache

type(alloc_cache_t) accel_oct_m::memcache
private

Definition at line 413 of file accel.F90.