Eigenvalue SoLvers for Petaflop-Applications (ELPA)  2021.05.002
Data Types | Functions/Subroutines | Variables
elpa_api Module Reference

Fortran module which provides the definition of the ELPA API. Do not use directly! Use the module "elpa". More...

Data Types

type  elpa_t
 Abstract definition of the elpa_t type. More...
 
type  elpa_autotune_t
 Abstract definition of the elpa_autotune type. More...
 
interface  elpa_strlen_c
 definition of helper function to get C strlen Parameters More...
 
interface  elpa_setup_i
 abstract definition of the ELPA setup method Parameters More...
 
interface  print_settings_i
 abstract definition of the print_settings method Parameters More...
 
interface  store_settings_i
 abstract definition of the store_settings method Parameters More...
 
interface  load_settings_i
 abstract definition of the load_settings method Parameters More...
 
interface  elpa_autotune_setup_i
 abstract definition of the autotune setup method Parameters More...
 
interface  elpa_autotune_step_i
 abstract definition of the autotune step method Parameters More...
 
interface  elpa_autotune_set_best_i
 abstract definition of the autotune set_best method Parameters More...
 
interface  elpa_autotune_print_best_i
 abstract definition of the autotune print best method Parameters More...
 
interface  elpa_autotune_print_state_i
 abstract definition of the autotune print state method Parameters More...
 
interface  elpa_autotune_save_state_i
 abstract definition of the autotune save state method Parameters More...
 
interface  elpa_autotune_load_state_i
 abstract definition of the autotune load state method Parameters More...
 
interface  elpa_set_integer_i
 abstract definition of set method for integer values Parameters More...
 
interface  elpa_get_integer_i
 abstract definition of get method for integer values Parameters More...
 
interface  elpa_is_set_i
 abstract definition of is_set method for integer values Parameters More...
 
interface  elpa_can_set_i
 abstract definition of can_set method for integer values Parameters More...
 
interface  elpa_set_float_i
 abstract definition of set method for float values Parameters More...
 
interface  elpa_get_float_i
 abstract definition of get method for float values Parameters More...
 
interface  elpa_set_double_i
 abstract definition of set method for double values Parameters More...
 
interface  elpa_get_double_i
 abstract definition of get method for double values Parameters More...
 
interface  elpa_associate_int_i
 abstract definition of associate method for integer pointers Parameters More...
 
interface  elpa_get_time_i
 abstract definition of get_time method to querry the timer Parameters More...
 
interface  elpa_print_times_i
 abstract definition of print method for timer Parameters More...
 
interface  elpa_timer_start_i
 abstract definition of the start method for timer Parameters More...
 
interface  elpa_timer_stop_i
 abstract definition of the stop method for timer Parameters More...
 
interface  elpa_destroy_i
 abstract definition of interface to destroy an ELPA object Parameters More...
 
interface  elpa_autotune_print_i
 abstract definition of interface to print the autotuning state Parameters More...
 
interface  elpa_autotune_destroy_i
 abstract definition of interface to destroy the autotuning state Parameters More...
 
interface  elpa_creating_from_legacy_api_i
 

Functions/Subroutines

integer(kind=c_int) function elpa_init (api_version)
 function to intialize the ELPA library Parameters More...
 
integer function elpa_initialized ()
 function to check whether the ELPA library has been correctly initialised Parameters More...
 
integer function elpa_get_api_version ()
 
subroutine elpa_uninit_c1 (error)
 subroutine to uninit the ELPA library. Does nothing at the moment. Might do sth. later More...
 
subroutine elpa_uninit_c0 ()
 
subroutine elpa_uninit_c (error)
 
subroutine elpa_uninit (error)
 
character(kind=c_char, len=elpa_strlen_c(elpa_strerr_c(elpa_error))) function, pointer elpa_strerr (elpa_error)
 helper function for error strings Parameters More...
 
character(kind=c_char, len=elpa_strlen_c(ptr)) function, pointer elpa_c_string (ptr)
 helper function for c strings Parameters More...
 
character(kind=c_char, len=elpa_int_value_to_strlen_c(name//c_null_char, value)) character(kind=c_char, len=elpa_int_value_to_strlen_c(name//c_null_char, value)) function, pointer elpa_int_value_to_string (name, value, error)
 function to convert an integer in its string representation Parameters More...
 
integer(kind=c_int) function elpa_int_string_to_value (name, string, error)
 function to convert a string in its integer representation: Parameters More...
 
integer function elpa_option_cardinality (option_name)
 function to get the number of possible choices for an option Parameters More...
 
integer function elpa_option_enumerate (option_name, i)
 function to enumerate an option Parameters More...
 

Variables

integer, parameter, private earliest_api_version = 20170403
 Definition of the earliest API version supported with the current release. More...
 
integer, parameter, private current_api_version = 20210430
 Definition of the current API version. More...
 
integer, parameter, private earliest_autotune_version = 20171201
 Definition of the earliest API version which supports autotuning. More...
 
integer, private api_version_set
 
logical, private initdone = .false.
 

Detailed Description

Fortran module which provides the definition of the ELPA API. Do not use directly! Use the module "elpa".

Function/Subroutine Documentation

◆ elpa_c_string()

character(kind=c_char, len=elpa_strlen_c(ptr)) function, pointer elpa_api::elpa_c_string ( type(c_ptr), intent(in)  ptr)

helper function for c strings Parameters

Parameters
ptrtype(c_ptr)
Returns
string string

◆ elpa_get_api_version()

integer function elpa_api::elpa_get_api_version

◆ elpa_init()

integer(kind=c_int) function elpa_api::elpa_init ( integer(kind=c_int), intent(in), value  api_version)

function to intialize the ELPA library Parameters

Parameters
api_versioninteger: api_version that ELPA should use
Returns
error integer: error code, which can be queried with elpa_strerr

◆ elpa_initialized()

integer function elpa_api::elpa_initialized

function to check whether the ELPA library has been correctly initialised Parameters

Returns
state integer: state is either ELPA_OK or ELPA_ERROR, which can be queried with elpa_strerr

◆ elpa_int_string_to_value()

integer(kind=c_int) function elpa_api::elpa_int_string_to_value ( character(kind=c_char, len=*), intent(in)  name,
character(kind=c_char, len=*), intent(in), target  string,
integer(kind=c_int), intent(out), optional  error 
)

function to convert a string in its integer representation: Parameters

Parameters
namestring: the key
stringstring: the string whose integer representation should be associated with the key
errorinteger, optional: error code, which can be queried with elpa_strerr()
Returns
value integer: the integer representation of the string

◆ elpa_int_value_to_string()

character(kind=c_char, len=elpa_int_value_to_strlen_c(name // c_null_char, value)) character(kind=c_char, len=elpa_int_value_to_strlen_c(name // c_null_char, value)) function, pointer elpa_api::elpa_int_value_to_string ( character(kind=c_char, len=*), intent(in)  name,
integer(kind=c_int), intent(in)  value,
integer(kind=c_int), intent(out), optional  error 
)

function to convert an integer in its string representation Parameters

Parameters
namestring: the key
valueinteger: the value correponding to the key
errorinteger, optional: error code, which can be queried with elpa_strerr()
Returns
string string: the string representation

◆ elpa_option_cardinality()

integer function elpa_api::elpa_option_cardinality ( character(kind=c_char, len=*), intent(in)  option_name)

function to get the number of possible choices for an option Parameters

Parameters
option_namestring: the option
Returns
number integer: the total number of possible values to be chosen

◆ elpa_option_enumerate()

integer function elpa_api::elpa_option_enumerate ( character(kind=c_char, len=*), intent(in)  option_name,
integer, intent(in)  i 
)

function to enumerate an option Parameters

Parameters
option_namestring: the option
iinteger
Returns
option integer

◆ elpa_strerr()

character(kind=c_char, len=elpa_strlen_c(elpa_strerr_c(elpa_error))) function, pointer elpa_api::elpa_strerr ( integer, intent(in)  elpa_error)

helper function for error strings Parameters

Parameters
elpa_errorinteger: error code to querry
Returns
string string: error string

◆ elpa_uninit()

subroutine elpa_api::elpa_uninit ( integer, intent(out), optional  error)

◆ elpa_uninit_c()

subroutine elpa_api::elpa_uninit_c ( integer(kind=c_int)  error)

◆ elpa_uninit_c0()

subroutine elpa_api::elpa_uninit_c0

◆ elpa_uninit_c1()

subroutine elpa_api::elpa_uninit_c1 ( integer(kind=c_int)  error)

subroutine to uninit the ELPA library. Does nothing at the moment. Might do sth. later

Variable Documentation

◆ api_version_set

integer, private elpa_api::api_version_set
private

◆ current_api_version

integer, parameter, private elpa_api::current_api_version = 20210430
private

Definition of the current API version.

◆ earliest_api_version

integer, parameter, private elpa_api::earliest_api_version = 20170403
private

Definition of the earliest API version supported with the current release.

◆ earliest_autotune_version

integer, parameter, private elpa_api::earliest_autotune_version = 20171201
private

Definition of the earliest API version which supports autotuning.

◆ initdone

logical, private elpa_api::initdone = .false.
private