1
0
mirror of https://github.com/paboyle/Grid.git synced 2025-06-12 20:27:06 +01:00

Wilson perf improvements with Gauge prefetching

This commit is contained in:
Peter Boyle
2015-05-06 06:37:21 +01:00
parent 35d949cc17
commit 55ccb8ccf4
14 changed files with 2819 additions and 3386 deletions

View File

@ -57,6 +57,9 @@ public:
friend void zeroit(iScalar<vtype> &that){
zeroit(that._internal);
}
friend void prefetch(iScalar<vtype> &that){
prefetch(that._internal);
}
friend void permute(iScalar<vtype> &out,const iScalar<vtype> &in,int permutetype){
permute(out._internal,in._internal,permutetype);
}
@ -141,6 +144,9 @@ public:
zeroit(that._internal[i]);
}
}
friend void prefetch(iVector<vtype,N> &that){
for(int i=0;i<N;i++) prefetch(that._internal[i]);
}
friend void vstream(iVector<vtype,N> &out,const iVector<vtype,N> &in){
for(int i=0;i<N;i++){
vstream(out._internal[i],in._internal[i]);
@ -219,6 +225,11 @@ public:
zeroit(that._internal[i][j]);
}}
}
friend void prefetch(iMatrix<vtype,N> &that){
for(int i=0;i<N;i++)
for(int j=0;j<N;j++)
prefetch(that._internal[i][j]);
}
friend void vstream(iMatrix<vtype,N> &out,const iMatrix<vtype,N> &in){
for(int i=0;i<N;i++){
for(int j=0;j<N;j++){