Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
elpa_set(3)		   Library Functions Manual		   elpa_set(3)

NAME
       elpa_set	- set parameter	or tunables for	the ELPA library

SYNOPSIS
   FORTRAN INTERFACE
       use elpa
       class(elpa_t), pointer :: elpa

       call elpa%set (character(*) name, datatype value, integer error)

       With the	definitions of the input and output variables:

       character(*) :: name
	      the name of the option to	be set

       datatype	:: value
	      the  value  which	 should	 be  assigned  to the option name. The
	      datatype can be integer or real(kind=c_double).

       integer,	optional :: error
	      the returned error code. On success it is	ELPA_OK, otherwise  an
	      error. The error code can	be querried with elpa_strerr(3)

   C INTERFACE
       #include	<elpa/elpa.h>
       elpa_t handle;

       void  elpa_set  (elpa_t	handle,	 const char *name, datatype value, int
       *error);

       With the	definitions of the input and output variables:

       elpa_t handle;
	      the  handle  of	an   ELPA   object,   obtained	 before	  with
	      elpa_allocate(3)"

       const char *name;
	      the name of the option to	be set.

       datatype	value;
	      the  value which should be assigned to the option	name. Datatype
	      can be either int	or double."

DESCRIPTION
       The elpa_set function is	used to	set parameters and  tunables  for  the
       run-time	 of  the  ELPA	library. It returns an error code which	can be
       querried	with elpa_strerr(3).

       Parameters:

       Parameters of an	ELPA instance have to be set BEFORE the	ELPA  instance
       is set up with the function elpa_setup(3).

       At the moment the following parameters are supported:

       "na":  integer parameter. The global matrix has size (na	* na)

       "nev": integer  parameter. The number of	eigenvectors to	be computed in
	      a	call to	elpa_eigenvectors(3). Must have	dimension 1 <= nev  <=
	      na.

       "local_nrows":
	      integer  parameter.  Number  of  matrix  rows stored on this MPI
	      process.

       "local_ncols":
	      integer parameter. Number	of matrix  cols	 stored	 on  this  MPI
	      process.

       "process_row":
	      integer	parameter.   Process  row  number  in  the  2D	domain
	      decomposition.

       "process_col":
	      integer  parameter.  Process  col	 number	 in  the   2D	domain
	      decomposition.

       "mpi_comm_parent":
	      integer  parameter.  The	parent MPI communicator	which includes
	      all MPI process which are	used in	the 2D domain decomposition.

       "bandwidth":
	      integer parameter. Some ELPA compute steps can be	accelerated if
	      the matrix is already in banded form. If set, ELPA assumes  that
	      the bandwidth of the matrix is the value set.

       "blacs_context":
	      integer	 parameter.    The   generalized   eigenvalue	solver
	      elpa_generalized_eigenvectors(3) use internal calls to  some  of
	      the  scalapack routines. Thus before calling it, the user	has to
	      provide properly initialized blacs context.

       "timings":
	      Choose whether time measurements should  be  done	 in  the  ELPA
	      routines.

       Tunables:

       Tunables	of an ELPA option can be set at	anytime.

       At the moment the following parameters are supported:

       "solver":
	      Choose  which  solver  should  be	 used  in  the	compute	 steps
	      elpa_eigenvalues(3)  or  elpa_eigenvectors(3).  At  the	moment
	      allowed option are "ELPA_SOLVER_1STAGE" or "ELPA_SOLVER_2STAGE".

       "real_kernel":
	      Choose	which	 real	kernel	 should	  be   used   in   the
	      elpa_eigenvalues(3) or elpa_eigenvectors(3)  compute  steps,  if
	      solver is	set to "ELPA_SOLVER_2STAGE". The available kernels can
	      be querried with elpa2_print_kernels(1).

       "complex_kernel":
	      Choose   which   complex	 kernel	  should   be	used   in  the
	      elpa_eigenvalues(3) or elpa_eigenvectors(3)  compute  steps,  if
	      solver is	set to "ELPA_SOLVER_2STAGE". The available kernels can
	      be querried with elpa2_print_kernels(1).

       "qr":  Choose	whether	   in	 the   real   case   computations   in
	      elpa_eigenvalues(3) or elpa_eigenvectors(3)  compute  steps,  if
	      solver  is set to	"ELPA_SOLVER_2STAGE", a	QR decompostion	should
	      be used.

       "qpu": Choose whether accelerated GPU calculations should be used. Only
	      available	if ELPA	has been build with GPU	support.

       "debug":
	      Choose whether, in case of  an  error,  more  debug  information
	      should be	provided.

SEE ALSO
       elpa2_print_kernels(1)	elpa_init(3)   elpa_allocate(3)	 elpa_setup(3)
       elpa_strerr(3)	      elpa_eigenvalues(3)	  elpa_eigenvectors(3)
       elpa_cholesky(3)	  elpa_invert_triangular(3)  elpa_solve_tridiagonal(3)
       elpa_hermitian_multiply(3) elpa_deallocate(3) elpa_uninit(3)

ELPA				Sat Jun	3 2017			   elpa_set(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=elpa_set&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help