Line data Source code
1 : #include "config-f90.h"
2 :
3 : module elpa_autotune_impl
4 : use elpa_abstract_impl
5 : use, intrinsic :: iso_c_binding
6 : implicit none
7 :
8 : type, extends(elpa_autotune_t) :: elpa_autotune_impl_t
9 : class(elpa_abstract_impl_t), pointer :: parent => NULL()
10 : integer :: i = 0
11 : real(kind=C_DOUBLE) :: min_val = 0.0_C_DOUBLE
12 : integer :: min_loc = 0
13 : integer :: N = 0
14 : integer :: level = 0
15 : integer :: domain = 0
16 : contains
17 : procedure, public :: print => elpa_autotune_print
18 : procedure, public :: destroy => elpa_autotune_destroy
19 : end type
20 :
21 : contains
22 :
23 : !> \brief function to print the autotuning
24 : !> Parameters
25 : !> \param self class(elpa_autotune_impl_t) the allocated ELPA autotune object
26 0 : subroutine elpa_autotune_print(self)
27 : implicit none
28 : class(elpa_autotune_impl_t), intent(in) :: self
29 : !print *, "Print me"
30 0 : end subroutine
31 :
32 : !> \brief function to destroy an elpa autotune object
33 : !> Parameters
34 : !> \param self class(elpa_autotune_impl_t) the allocated ELPA autotune object
35 0 : subroutine elpa_autotune_destroy(self)
36 : implicit none
37 : class(elpa_autotune_impl_t), intent(inout) :: self
38 : ! nothing to do atm
39 0 : end subroutine
40 :
41 0 : end module
|