Matrix multiplication and related declarations. More...
#include <par_mpi.h>Go to the source code of this file.
Functions | |
| int | Dslash (Complex *phi, Complex *r, Complex *ut[nc], unsigned int *iu, unsigned int *id, Complex gamval[20], const unsigned short gamin[16], double *dk[nc], Complex_f jqq, float akappa) |
| Evaluates \(\Phi=M r\) in double precision. | |
| int | Dslashd (Complex *phi, Complex *r, Complex *ut[nc], unsigned int *iu, unsigned int *id, Complex gamval[20], const unsigned short gamin[16], double *dk[nc], Complex_f jqq, float akappa) |
| Evaluates \(\Phi=M^\dagger r\) in double precision. | |
| int | Hdslash (Complex *phi, Complex *r, Complex *ut[nc], unsigned int *iu, unsigned int *id, Complex gamval[20], const unsigned short gamin[16], double *dk[nc], float akappa) |
| Evaluates \(\Phi=M r\) in double precision. | |
| int | Hdslashd (Complex *phi, Complex *r, Complex *ut[nc], unsigned int *iu, unsigned int *id, Complex gamval[20], const unsigned short gamin[16], double *dk[nc], float akappa) |
| Evaluates \(\Phi=M^\dagger r\) in double precision. | |
| int | Dslash_f (Complex_f *phi, Complex_f *r, Complex_f *ut[nc], unsigned int *iu, unsigned int *id, Complex_f gamval[20], const unsigned short gamin[16], float *dk[nc], Complex_f jqq, float akappa) |
| Evaluates \(\Phi=M r\) in single precision. | |
| int | Dslashd_f (Complex_f *phi, Complex_f *r, Complex_f *ut[nc], unsigned int *iu, unsigned int *id, Complex_f gamval[20], const unsigned short gamin[16], float *dk[nc], Complex_f jqq, float akappa) |
| Evaluates \(\Phi=M^\dagger r\) in single precision. | |
| int | Hdslash_f (Complex_f *phi, Complex_f *r, Complex_f *ut[nc], unsigned int *iu, unsigned int *id, Complex_f gamval[20], const unsigned short gamin[16], float *dk[nc], float akappa) |
| Evaluates \(\Phi=M r\) in single precision. | |
| int | Hdslashd_f (Complex_f *phi, Complex_f *r, Complex_f *ut[nc], unsigned int *iu, unsigned int *id, Complex_f gamval[20], const unsigned short gamin[16], float *dk[nc], float akappa) |
| Evaluates \(\Phi=M^\dagger r\) in single precision. | |
| void | Transpose_z (Complex *out, const int, const int) |
| In place transpose used to convert from AoS to SoA memory layout. | |
| void | Transpose_c (Complex_f *out, const int, const int) |
| In place transpose used to convert from AoS to SoA memory layout. | |
| void | Transpose_d (double *out, const int, const int) |
| In place transpose used to convert from AoS to SoA memory layout. | |
| void | Transpose_f (float *out, const int, const int) |
| In place transpose used to convert from AoS to SoA memory layout. | |
| void | Transpose_I (int *out, const int, const int) |
| In place transpose used to convert from AoS to SoA memory layout. | |
| void | Transpose_U (unsigned int *out, const int, const int) |
| In place transpose used to convert from AoS to SoA memory layout. | |
| void | cuDslash (Complex *phi, Complex *r, Complex *ut[nc], unsigned int *iu, unsigned int *id, Complex gamval[20], const unsigned short gamin[16], double *dk[nc], Complex_f jqq, float akappa, dim3 dimGrid, dim3 dimBlock) |
| GPU calling wrapper for \(\Phi=M r\) in double precision. | |
| void | cuDslashd (Complex *phi, Complex *r, Complex *ut[nc], unsigned int *iu, unsigned int *id, Complex gamval[20], const unsigned short gamin[16], double *dk[nc], Complex_f jqq, float akappa, dim3 dimGrid, dim3 dimBlock) |
| GPU calling wrapper for \(\Phi=M^\dagger r\) in double precision. | |
| void | cuHdslash (Complex *phi, Complex *r, Complex *ut[nc], unsigned int *iu, unsigned int *id, Complex gamval[20], const unsigned short gamin[16], double *dk[nc], float akappa, dim3 dimGrid, dim3 dimBlock) |
| GPU calling wrapper for \(\Phi=M^\dagger r\) in double precision. | |
| void | cuHdslashd (Complex *phi, Complex *r, Complex *ut[nc], unsigned int *iu, unsigned int *id, Complex gamval[20], const unsigned short gamin[16], double *dk[nc], float akappa, dim3 dimGrid, dim3 dimBlock) |
| GPU calling wrapper for \(\Phi=M^\dagger r\) in double precision. | |
| void | cuDslash_f (Complex_f *phi, Complex_f *r, Complex_f *ut[nc], unsigned int *iu, unsigned int *id, Complex_f gamval[20], const unsigned short gamin[16], float *dk[nc], Complex_f jqq, float akappa, dim3 dimGrid, dim3 dimBlock) |
| GPU calling wrapper for \(\Phi=M^\dagger r\) in double precision. | |
| void | cuDslashd_f (Complex_f *phi, Complex_f *r, Complex_f *ut[nc], unsigned int *iu, unsigned int *id, Complex_f gamval[20], const unsigned short gamin[16], float *dk[nc], Complex_f jqq, float akappa, dim3 dimGrid, dim3 dimBlock) |
| GPU calling wrapper for \(\Phi=M^\dagger r\) in double precision. | |
| void | cuHdslash_f (Complex_f *phi, Complex_f *r, Complex_f *ut[nc], unsigned int *iu, unsigned int *id, Complex_f gamval[20], const unsigned short gamin[16], float *dk[nc], float akappa, dim3 dimGrid, dim3 dimBlock) |
| GPU calling wrapper for \(\Phi=M r\) in single precision. | |
| void | cuHdslashd_f (Complex_f *phi, Complex_f *r, Complex_f *ut[nc], unsigned int *iu, unsigned int *id, Complex_f gamval[20], const unsigned short gamin[16], float *dk[nc], float akappa, dim3 dimGrid, dim3 dimBlock) |
| GPU calling wrapper for \(\Phi=M^\dagger r\) in single precision. | |
| double | cureduce_sum_d (double *input, const unsigned int n, const unsigned short stream) |
| Sum all terms in an array of doubles. | |
| float | cureduce_sum_f (float *input, const unsigned int n, const unsigned short stream) |
| Sum all terms in an array of floats. | |
| void | cuTranspose_z (Complex *out, const int fast_in, const int fast_out, const dim3 dimGrid, const dim3 dimBlock) |
| In place transpose used to convert from AoS to SoA memory layout. | |
| void | cuTranspose_c (Complex_f *out, const int fast_in, const int fast_out, const dim3 dimGrid, const dim3 dimBlock) |
| In place transpose used to convert from AoS to SoA memory layout. | |
| void | cuTranspose_d (double *out, const int fast_in, const int fast_out, const dim3 dimGrid, const dim3 dimBlock) |
| In place transpose used to convert from AoS to SoA memory layout. | |
| void | cuTranspose_f (float *out, const int fast_in, const int fast_out, const dim3 dimGrid, const dim3 dimBlock) |
| In place transpose used to convert from AoS to SoA memory layout. | |
| void | cuTranspose_I (int *out, const int fast_in, const int fast_out, const dim3 dimGrid, const dim3 dimBlock) |
| In place transpose used to convert from AoS to SoA memory layout. | |
| void | cuTranspose_U (unsigned int *out, const int fast_in, const int fast_out, const dim3 dimGrid, const dim3 dimBlock) |
| In place transpose used to convert from AoS to SoA memory layout. | |
| void | cuMixed_Sumto (double *d, float *f, const unsigned int n, const dim3 dimGrid, const dim3 dimBlock) |
| Add a single to a double value, and save the output in the double array For complex valued arrays, one may cast the complex<double> and complex<float> arrays to double and float arrays, and use 2N for the array length instead. | |
Matrix multiplication and related declarations.
Definition in file matrices.h.