1
0
mirror of https://github.com/TREX-CoE/qmckl.git synced 2024-07-15 23:51:05 +02:00

Added restrict in AOs sparse

This commit is contained in:
Anthony Scemama 2022-10-13 11:31:44 +02:00
parent 1c5713f2f6
commit 485571f771

View File

@ -5718,8 +5718,8 @@ qmckl_compute_ao_value_hpc_gaussian (const qmckl_context context,
double exp_mat[prim_max] __attribute__((aligned(64)));
double ce_mat[shell_max] __attribute__((aligned(64)));
int coef_mat_sparse_idx[nucl_num][shell_max][prim_max+1];
double coef_mat_sparse [nucl_num][shell_max][prim_max+1];
int32_t coef_mat_sparse_idx[nucl_num][shell_max][prim_max+1] __attribute__((aligned(64)));
double coef_mat_sparse [nucl_num][shell_max][prim_max+1] __attribute__((aligned(64)));
for (int i=0 ; i<nucl_num ; ++i) {
for (int j=0 ; j<shell_max; ++j) {
int l=1;
@ -5814,8 +5814,8 @@ qmckl_compute_ao_value_hpc_gaussian (const qmckl_context context,
for (int i=0 ; i<nucleus_shell_num[inucl] ; ++i) {
ce_mat[i] = 0.;
const int* idx = &(coef_mat_sparse_idx[inucl][i][0]);
const double* v = &(coef_mat_sparse[inucl][i][0]);
const int32_t* restrict idx = &(coef_mat_sparse_idx[inucl][i][0]);
const double* restrict v = &(coef_mat_sparse[inucl][i][0]);
for (int l=1 ; l<coef_mat_sparse_idx[inucl][i][0]; ++l) {
const int k = idx[l];
if (k >= nidx) break;
@ -6508,8 +6508,8 @@ qmckl_compute_ao_vgl_hpc_gaussian (
double exp_mat[prim_max][8] __attribute__((aligned(64))) ;
double ce_mat[shell_max][8] __attribute__((aligned(64))) ;
double coef_mat_sparse[nucl_num][shell_max][prim_max+1];
int coef_mat_sparse_idx[nucl_num][shell_max][prim_max+1];
int32_t coef_mat_sparse_idx[nucl_num][shell_max][prim_max+1] __attribute__((aligned(64)));
double coef_mat_sparse [nucl_num][shell_max][prim_max+1] __attribute__((aligned(64)));
for (int i=0 ; i<nucl_num ; ++i) {
for (int j=0 ; j<shell_max; ++j) {
int l=1;
@ -6642,8 +6642,8 @@ qmckl_compute_ao_vgl_hpc_gaussian (
for (int j=0 ; j<8 ; ++j) {
ce_mat[i][j] = 0.;
}
const int* idx = &(coef_mat_sparse_idx[inucl][i][0]);
const double* v = &(coef_mat_sparse[inucl][i][0]);
const int32_t* restrict idx = &(coef_mat_sparse_idx[inucl][i][0]);
const double* restrict v = &(coef_mat_sparse[inucl][i][0]);
for (int l=1 ; l<idx[0]; ++l) {
const int k = idx[l];
if (k >= nidx) break;