![]() |
(git:f56c6e3)
|
#include <assert.h>#include <limits.h>#include <math.h>#include <stdbool.h>#include <stdio.h>#include <string.h>#include "../common/grid_common.h"#include "grid_dgemm_tensor_local.h"#include "grid_dgemm_utils.h"Go to the source code of this file.
Functions | |
| void | convert_to_lattice_coordinates (const double dh_inv_[3][3], const double *restrict const rp, double *restrict rp_c) |
| void | dgemm_simplified (dgemm_params *const m) |
| void | batched_dgemm_simplified (dgemm_params *const m, const int batch_size) |
| void | extract_sub_grid (const int *lower_corner, const int *upper_corner, const int *position, const tensor *const grid, tensor *const subgrid) |
| void | add_sub_grid (const int *lower_corner, const int *upper_corner, const int *position, const tensor *subgrid, tensor *grid) |
| int | compute_cube_properties (const bool ortho, const double radius, const double dh[3][3], const double dh_inv[3][3], const double *rp, double *disr_radius, double *roffset, int *cubecenter, int *lb_cube, int *ub_cube, int *cube_size) |
| void | return_cube_position (const int *const lb_grid, const int *const cube_center, const int *const lower_boundaries_cube, const int *const period, int *const position) |
| void | verify_orthogonality (const double dh[3][3], bool orthogonal[3]) |
| void | dger_ (const int *M, const int *N, const double *alpha, const double *X, const int *incX, const double *Y, const int *incY, double *A, const int *lda) |
| void | dgemv_ (const char *Trans, const int *M, const int *N, const double *alpha, const double *A, const int *lda, const double *X, const int *incX, const double *beta, double *Y, const int *incY) |
| void | cblas_daxpy (const int N, const double alpha, const double *X, const int incX, double *Y, const int incY) |
| double | cblas_ddot (const int N, const double *X, const int incX, const double *Y, const int incY) |
| void | cblas_dger (const CBLAS_LAYOUT Layout, const int M, const int N, const double alpha, const double *X, const int incX, const double *Y, const int incY, double *A, const int lda) |
| void | cblas_dgemv (const CBLAS_LAYOUT order, const CBLAS_TRANSPOSE TransA, const int M, const int N, const double alpha, const double *A, const int lda, const double *X, const int incX, const double beta, double *Y, const int incY) |
| void | compute_interval (const int *const map, const int full_size, const int size, const int cube_size, const int x1, int *x, int *const lower_corner, int *const upper_corner, const Interval window) |
| void convert_to_lattice_coordinates | ( | const double | dh_inv_[3][3], |
| const double *restrict const | rp, | ||
| double *restrict | rp_c | ||
| ) |
Definition at line 27 of file grid_dgemm_utils.c.
| void dgemm_simplified | ( | dgemm_params *const | m | ) |
Definition at line 40 of file grid_dgemm_utils.c.
| void batched_dgemm_simplified | ( | dgemm_params *const | m, |
| const int | batch_size | ||
| ) |
| int compute_cube_properties | ( | const bool | ortho, |
| const double | radius, | ||
| const double | dh[3][3], | ||
| const double | dh_inv[3][3], | ||
| const double * | rp, | ||
| double * | disr_radius, | ||
| double * | roffset, | ||
| int * | cubecenter, | ||
| int * | lb_cube, | ||
| int * | ub_cube, | ||
| int * | cube_size | ||
| ) |
Definition at line 270 of file grid_dgemm_utils.c.
| void return_cube_position | ( | const int *const | lb_grid, |
| const int *const | cube_center, | ||
| const int *const | lower_boundaries_cube, | ||
| const int *const | period, | ||
| int *const | position | ||
| ) |
| void verify_orthogonality | ( | const double | dh[3][3], |
| bool | orthogonal[3] | ||
| ) |
|
extern |
|
extern |
| void cblas_daxpy | ( | const int | N, |
| const double | alpha, | ||
| const double * | X, | ||
| const int | incX, | ||
| double * | Y, | ||
| const int | incY | ||
| ) |
| double cblas_ddot | ( | const int | N, |
| const double * | X, | ||
| const int | incX, | ||
| const double * | Y, | ||
| const int | incY | ||
| ) |
| void cblas_dger | ( | const CBLAS_LAYOUT | Layout, |
| const int | M, | ||
| const int | N, | ||
| const double | alpha, | ||
| const double * | X, | ||
| const int | incX, | ||
| const double * | Y, | ||
| const int | incY, | ||
| double * | A, | ||
| const int | lda | ||
| ) |
Definition at line 468 of file grid_dgemm_utils.c.
| void cblas_dgemv | ( | const CBLAS_LAYOUT | order, |
| const CBLAS_TRANSPOSE | TransA, | ||
| const int | M, | ||
| const int | N, | ||
| const double | alpha, | ||
| const double * | A, | ||
| const int | lda, | ||
| const double * | X, | ||
| const int | incX, | ||
| const double | beta, | ||
| double * | Y, | ||
| const int | incY | ||
| ) |
Definition at line 480 of file grid_dgemm_utils.c.
| void compute_interval | ( | const int *const | map, |
| const int | full_size, | ||
| const int | size, | ||
| const int | cube_size, | ||
| const int | x1, | ||
| int * | x, | ||
| int *const | lower_corner, | ||
| int *const | upper_corner, | ||
| const Interval | window | ||
| ) |
Definition at line 501 of file grid_dgemm_utils.c.