Commit dea4cf6b authored by Gaurav Kukreja's avatar Gaurav Kukreja

Changed the access pattern into matrix

Exchanged the nested loops in relax_jacobi and residual_jacobi to ensure
linear memory access.
Signed-off-by: 's avatarGaurav Kukreja <mailme.gaurav@gmail.com>
parent 7df693de
...@@ -43,9 +43,9 @@ void relax_jacobi( double *u, double *utmp, ...@@ -43,9 +43,9 @@ void relax_jacobi( double *u, double *utmp,
{ {
int i, j; int i, j;
for( j=1; j<sizex-1; j++ ) for( i=1; i<sizey-1; i++ )
{ {
for( i=1; i<sizey-1; i++ ) for( j=1; j<sizex-1; j++ )
{ {
utmp[i*sizex+j]= 0.25 * (u[ i*sizex + (j-1) ]+ // left utmp[i*sizex+j]= 0.25 * (u[ i*sizex + (j-1) ]+ // left
u[ i*sizex + (j+1) ]+ // right u[ i*sizex + (j+1) ]+ // right
...@@ -56,9 +56,9 @@ void relax_jacobi( double *u, double *utmp, ...@@ -56,9 +56,9 @@ void relax_jacobi( double *u, double *utmp,
// copy from utmp to u // copy from utmp to u
for( j=1; j<sizex-1; j++ ) for( i=1; i<sizey-1; i++ )
{ {
for( i=1; i<sizey-1; i++ ) for( j=1; j<sizex-1; j++ )
{ {
u[ i*sizex+j ] = utmp[ i*sizex+j ]; u[ i*sizex+j ] = utmp[ i*sizex+j ];
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment