Manager class for ELPA and ScaLAPACK. More...
#include <ElpaScalapackManager.h>
Public Member Functions | |
| unsigned int | getScalapackBlockSize () const |
| std::shared_ptr< const ProcessGrid > | getProcessGridDftefeScalaWrapper () const |
| void | processGridELPASetup (const unsigned int na) |
| void | elpaDeallocateHandles () |
| const elpa_t & | getElpaHandle () const |
| elpa_t & | getElpaHandlePartialEigenVec () |
| elpa_autotune_t & | getElpaAutoTuneHandle () |
| const bool & | useElpa () const |
| const utils::mpi::MPIComm & | getMPICommunicator () const |
| Get relevant mpi communicator. More... | |
| ElpaScalapackManager (const utils::mpi::MPIComm &mpi_comm_replica, const size_type scalapackParalProcs, const bool useELPA, const size_type scalapackBlockSize, const bool useELPADeviceKernel) | |
| Constructor. More... | |
| ~ElpaScalapackManager () | |
| Destructor. More... | |
Public Attributes | |
| utils::mpi::MPIComm | d_mpi_communicator |
| elpa_t | d_elpaHandle |
| ELPA handle. More... | |
| elpa_t | d_elpaHandlePartialEigenVec |
| ELPA handle for partial eigenvectors of full proj ham. More... | |
| elpa_autotune_t | d_elpaAutoTuneHandle |
| ELPA autotune handle. More... | |
| utils::mpi::MPIComm | d_processGridCommunicatorActive |
| processGrid mpi communicator More... | |
| utils::mpi::MPIComm | d_processGridCommunicatorActivePartial |
| const size_type | d_scalapackBlockSizeInp |
| const bool | d_useELPA |
| const size_type | d_scalapackParalProcs |
| const bool | d_useELPADeviceKernel |
| unsigned int | d_scalapackBlockSize |
| ScaLAPACK distributed format block size. More... | |
| std::shared_ptr< const ProcessGrid > | d_processGridDftefeWrapper |
Manager class for ELPA and ScaLAPACK.
| dftefe::linearAlgebra::ElpaScalapackManager::ElpaScalapackManager | ( | const utils::mpi::MPIComm & | mpi_comm_replica, |
| const size_type | scalapackParalProcs, | ||
| const bool | useELPA, | ||
| const size_type | scalapackBlockSize, | ||
| const bool | useELPADeviceKernel | ||
| ) |
Constructor.
| dftefe::linearAlgebra::ElpaScalapackManager::~ElpaScalapackManager | ( | ) |
Destructor.

| void dftefe::linearAlgebra::ElpaScalapackManager::elpaDeallocateHandles | ( | ) |
|
inline |
|
inline |
|
inline |
| const utils::mpi::MPIComm & dftefe::linearAlgebra::ElpaScalapackManager::getMPICommunicator | ( | ) | const |
Get relevant mpi communicator.

|
inline |
|
inline |
| void dftefe::linearAlgebra::ElpaScalapackManager::processGridELPASetup | ( | const unsigned int | na | ) |

|
inline |
| elpa_autotune_t dftefe::linearAlgebra::ElpaScalapackManager::d_elpaAutoTuneHandle |
ELPA autotune handle.
| elpa_t dftefe::linearAlgebra::ElpaScalapackManager::d_elpaHandle |
ELPA handle.
| elpa_t dftefe::linearAlgebra::ElpaScalapackManager::d_elpaHandlePartialEigenVec |
ELPA handle for partial eigenvectors of full proj ham.
| utils::mpi::MPIComm dftefe::linearAlgebra::ElpaScalapackManager::d_mpi_communicator |
| utils::mpi::MPIComm dftefe::linearAlgebra::ElpaScalapackManager::d_processGridCommunicatorActive |
processGrid mpi communicator
| utils::mpi::MPIComm dftefe::linearAlgebra::ElpaScalapackManager::d_processGridCommunicatorActivePartial |
| std::shared_ptr<const ProcessGrid> dftefe::linearAlgebra::ElpaScalapackManager::d_processGridDftefeWrapper |
| unsigned int dftefe::linearAlgebra::ElpaScalapackManager::d_scalapackBlockSize |
ScaLAPACK distributed format block size.
| const size_type dftefe::linearAlgebra::ElpaScalapackManager::d_scalapackBlockSizeInp |
| const size_type dftefe::linearAlgebra::ElpaScalapackManager::d_scalapackParalProcs |
| const bool dftefe::linearAlgebra::ElpaScalapackManager::d_useELPA |
| const bool dftefe::linearAlgebra::ElpaScalapackManager::d_useELPADeviceKernel |