Loading...
Searching...
No Matches
gpu_kernels_hip.cpp File Reference
#include "layer_4_computation/diagonalizer/planewave/internal/hamiltonian_applicator/gpu_kernels.hpp"
#include <hip/hip_complex.h>
#include <hip/hip_runtime.h>

Go to the source code of this file.

Namespaces

namespace  q3
 
namespace  q3::diagonalizer
 
namespace  q3::diagonalizer::planewave
 
namespace  q3::diagonalizer::planewave::gpu
 

Functions

__global__ void q3::diagonalizer::planewave::gpu::apply_kinetic_energy_kernel (int total_elements, int number_of_plane_waves, const double *kinetic_energy, const hipDoubleComplex *psi, hipDoubleComplex *hpsi)
 
__global__ void q3::diagonalizer::planewave::gpu::apply_kinetic_energy_single_kernel (int total_elements, int number_of_plane_waves, const float *kinetic_energy, const hipComplex *psi, hipComplex *hpsi)
 
__global__ void q3::diagonalizer::planewave::gpu::apply_preconditioner_kernel (int total_elements, int number_of_plane_waves, const double *kinetic_energy_squared, const double *eigenvalues, const bool *band_converged, double floor_value, hipDoubleComplex *residual_wavefunctions)
 
__global__ void q3::diagonalizer::planewave::gpu::compute_residuals_kernel (int total_elements, int number_of_plane_waves, const double *eigenvalues, const hipDoubleComplex *hamiltonian_ritz_vectors, const hipDoubleComplex *overlap_ritz_vectors, hipDoubleComplex *residual_wavefunctions)
 
__global__ void q3::diagonalizer::planewave::gpu::gather_fft_grid_to_g_kernel (int total_elements, int number_of_plane_waves, int local_smooth_grid_points, const int *g_to_fft_mapping, const hipDoubleComplex *fft_workspace, hipDoubleComplex *hpsi)
 
__global__ void q3::diagonalizer::planewave::gpu::gather_fft_grid_to_g_mixed_kernel (int total_elements, int number_of_plane_waves, int local_smooth_grid_points, const int *g_to_fft_mapping, const hipComplex *fft_workspace, hipDoubleComplex *hpsi)
 
__global__ void q3::diagonalizer::planewave::gpu::gather_fft_grid_to_g_single_kernel (int total_elements, int number_of_plane_waves, int local_smooth_grid_points, const int *g_to_fft_mapping, const hipComplex *fft_workspace, hipComplex *hpsi)
 
void q3::diagonalizer::planewave::gpu::launch_apply_kinetic_energy (int number_of_vectors, int number_of_plane_waves, const double *kinetic_energy, const std::complex< double > *psi, std::complex< double > *hpsi)
 
void q3::diagonalizer::planewave::gpu::launch_apply_kinetic_energy_single (int number_of_vectors, int number_of_plane_waves, const float *kinetic_energy, const std::complex< float > *psi, std::complex< float > *hpsi)
 
void q3::diagonalizer::planewave::gpu::launch_apply_preconditioner (int number_of_bands, int number_of_plane_waves, const double *kinetic_energy_squared, const double *eigenvalues, const bool *band_converged, double floor_value, std::complex< double > *residual_wavefunctions)
 
void q3::diagonalizer::planewave::gpu::launch_compute_residuals (int number_of_bands, int number_of_plane_waves, const double *eigenvalues, const std::complex< double > *hamiltonian_ritz_vectors, const std::complex< double > *overlap_ritz_vectors, std::complex< double > *residual_wavefunctions)
 
void q3::diagonalizer::planewave::gpu::launch_gather_fft_grid_to_g (int number_of_vectors, int number_of_plane_waves, int local_smooth_grid_points, const int *g_to_fft_mapping, const std::complex< double > *fft_workspace, std::complex< double > *hpsi)
 
void q3::diagonalizer::planewave::gpu::launch_gather_fft_grid_to_g_mixed (int number_of_vectors, int number_of_plane_waves, int local_smooth_grid_points, const int *g_to_fft_mapping, const std::complex< float > *fft_workspace, std::complex< double > *hpsi)
 
void q3::diagonalizer::planewave::gpu::launch_gather_fft_grid_to_g_single (int number_of_vectors, int number_of_plane_waves, int local_smooth_grid_points, const int *g_to_fft_mapping, const std::complex< float > *fft_workspace, std::complex< float > *hpsi)
 
void q3::diagonalizer::planewave::gpu::launch_multiply_potential (int number_of_vectors, int local_smooth_grid_points, const double *potential, std::complex< double > *fft_workspace)
 
void q3::diagonalizer::planewave::gpu::launch_multiply_potential_single (int number_of_vectors, int local_smooth_grid_points, const float *potential, std::complex< float > *fft_workspace)
 
void q3::diagonalizer::planewave::gpu::launch_scatter_g_to_fft_grid (int number_of_vectors, int number_of_plane_waves, int local_smooth_grid_points, const int *g_to_fft_mapping, const int *minus_g_to_fft_mapping, bool is_gamma_only, const std::complex< double > *psi, std::complex< double > *fft_workspace)
 
void q3::diagonalizer::planewave::gpu::launch_scatter_g_to_fft_grid_mixed (int number_of_vectors, int number_of_plane_waves, int local_smooth_grid_points, const int *g_to_fft_mapping, const int *minus_g_to_fft_mapping, bool is_gamma_only, const std::complex< double > *psi, std::complex< float > *fft_workspace)
 
void q3::diagonalizer::planewave::gpu::launch_scatter_g_to_fft_grid_single (int number_of_vectors, int number_of_plane_waves, int local_smooth_grid_points, const int *g_to_fft_mapping, const int *minus_g_to_fft_mapping, bool is_gamma_only, const std::complex< float > *psi, std::complex< float > *fft_workspace)
 
__global__ void q3::diagonalizer::planewave::gpu::multiply_potential_kernel (int total_elements, int local_smooth_grid_points, const double *potential, hipDoubleComplex *fft_workspace)
 
__global__ void q3::diagonalizer::planewave::gpu::multiply_potential_single_kernel (int total_elements, int local_smooth_grid_points, const float *potential, hipComplex *fft_workspace)
 
__global__ void q3::diagonalizer::planewave::gpu::scatter_g_to_fft_grid_kernel (int total_elements, int number_of_plane_waves, int local_smooth_grid_points, const int *g_to_fft_mapping, const int *minus_g_to_fft_mapping, bool is_gamma_only, const hipDoubleComplex *psi, hipDoubleComplex *fft_workspace)
 
__global__ void q3::diagonalizer::planewave::gpu::scatter_g_to_fft_grid_mixed_kernel (int total_elements, int number_of_plane_waves, int local_smooth_grid_points, const int *g_to_fft_mapping, const int *minus_g_to_fft_mapping, bool is_gamma_only, const hipDoubleComplex *psi, hipComplex *fft_workspace)
 
__global__ void q3::diagonalizer::planewave::gpu::scatter_g_to_fft_grid_single_kernel (int total_elements, int number_of_plane_waves, int local_smooth_grid_points, const int *g_to_fft_mapping, const int *minus_g_to_fft_mapping, bool is_gamma_only, const hipComplex *psi, hipComplex *fft_workspace)