24#ifndef elpaScalaManager_h
25#define elpaScalaManager_h
35 namespace linearAlgebra
51 std::shared_ptr<const ProcessGrid>
87 const bool useELPADeviceKernel);
132 inline std::shared_ptr<const ProcessGrid>
138 inline const elpa_t &
157 inline elpa_autotune_t &
Manager class for ELPA and ScaLAPACK.
Definition: ElpaScalapackManager.h:43
const size_type d_scalapackBlockSizeInp
Definition: ElpaScalapackManager.h:113
const size_type d_scalapackParalProcs
Definition: ElpaScalapackManager.h:115
elpa_t & getElpaHandlePartialEigenVec()
Definition: ElpaScalapackManager.h:151
elpa_t d_elpaHandle
ELPA handle.
Definition: ElpaScalapackManager.h:100
void processGridELPASetup(const unsigned int na)
Definition: ElpaScalapackManager.cpp:81
utils::mpi::MPIComm d_processGridCommunicatorActive
processGrid mpi communicator
Definition: ElpaScalapackManager.h:109
const bool d_useELPA
Definition: ElpaScalapackManager.h:114
const utils::mpi::MPIComm & getMPICommunicator() const
Get relevant mpi communicator.
Definition: ElpaScalapackManager.cpp:74
elpa_t d_elpaHandlePartialEigenVec
ELPA handle for partial eigenvectors of full proj ham.
Definition: ElpaScalapackManager.h:103
elpa_autotune_t d_elpaAutoTuneHandle
ELPA autotune handle.
Definition: ElpaScalapackManager.h:106
utils::mpi::MPIComm d_processGridCommunicatorActivePartial
Definition: ElpaScalapackManager.h:111
unsigned int d_scalapackBlockSize
ScaLAPACK distributed format block size.
Definition: ElpaScalapackManager.h:119
std::shared_ptr< const ProcessGrid > d_processGridDftefeWrapper
Definition: ElpaScalapackManager.h:121
elpa_autotune_t & getElpaAutoTuneHandle()
Definition: ElpaScalapackManager.h:158
~ElpaScalapackManager()
Destructor.
Definition: ElpaScalapackManager.cpp:51
void elpaDeallocateHandles()
Definition: ElpaScalapackManager.cpp:115
const bool & useElpa() const
Definition: ElpaScalapackManager.h:145
const elpa_t & getElpaHandle() const
Definition: ElpaScalapackManager.h:139
utils::mpi::MPIComm d_mpi_communicator
Definition: ElpaScalapackManager.h:97
std::shared_ptr< const ProcessGrid > getProcessGridDftefeScalaWrapper() const
Definition: ElpaScalapackManager.h:133
const bool d_useELPADeviceKernel
Definition: ElpaScalapackManager.h:116
unsigned int getScalapackBlockSize() const
Definition: ElpaScalapackManager.h:127
int MPIComm
Definition: MPITypes.h:84
dealii includes
Definition: AtomFieldDataSpherical.cpp:31
unsigned int size_type
Definition: TypeConfig.h:8