use TASK_SIZE instead of width
git-svn-id: svn://anubis/gvsu@326 45c1a28c-8058-47b2-ae61-ca45b979098e
This commit is contained in:
parent
22f840d3d5
commit
08b1aca672
@ -77,7 +77,7 @@ int main(int argc, char * argv[])
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned int * taskVals = new unsigned int[width + 1];
|
unsigned int * taskVals = new unsigned int[TASK_SIZE + 1];
|
||||||
double window_vals[4];
|
double window_vals[4];
|
||||||
if (my_rank == 0)
|
if (my_rank == 0)
|
||||||
{
|
{
|
||||||
@ -266,7 +266,7 @@ void draw(int rank, int world_size, int nprocs, int width, int height,
|
|||||||
int num_tasks = (num_pixels + TASK_SIZE - 1) / TASK_SIZE;
|
int num_tasks = (num_pixels + TASK_SIZE - 1) / TASK_SIZE;
|
||||||
for (int received = 0; received < num_tasks; received++)
|
for (int received = 0; received < num_tasks; received++)
|
||||||
{
|
{
|
||||||
MPI_Recv(taskVals, width + 1, MPI_INT,
|
MPI_Recv(taskVals, TASK_SIZE + 1, MPI_INT,
|
||||||
MPI_ANY_SOURCE, MPI_ANY_TAG, MPI_COMM_WORLD, &mpi_status);
|
MPI_ANY_SOURCE, MPI_ANY_TAG, MPI_COMM_WORLD, &mpi_status);
|
||||||
if (pixel < num_pixels)
|
if (pixel < num_pixels)
|
||||||
{
|
{
|
||||||
@ -279,7 +279,7 @@ void draw(int rank, int world_size, int nprocs, int width, int height,
|
|||||||
MPI_Send(&done_val, 1, MPI_INT,
|
MPI_Send(&done_val, 1, MPI_INT,
|
||||||
mpi_status.MPI_SOURCE, 0, MPI_COMM_WORLD);
|
mpi_status.MPI_SOURCE, 0, MPI_COMM_WORLD);
|
||||||
}
|
}
|
||||||
memcpy(pixels + taskVals[0], taskVals + 1, width * sizeof(int));
|
memcpy(pixels + taskVals[0], taskVals + 1, TASK_SIZE * sizeof(int));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -299,10 +299,10 @@ void draw(int rank, int world_size, int nprocs, int width, int height,
|
|||||||
int y = this_pixel_num / width;
|
int y = this_pixel_num / width;
|
||||||
double x_virt = getXVirt(x);
|
double x_virt = getXVirt(x);
|
||||||
double y_virt = getYVirt(y);
|
double y_virt = getYVirt(y);
|
||||||
pixels[this_pixel_num] = computation->compute(x_virt, y_virt);
|
taskVals[i + 1] = computation->compute(x_virt, y_virt);
|
||||||
}
|
}
|
||||||
/* send the computed pixel data to the master node */
|
/* send the computed pixel data to the master node */
|
||||||
MPI_Send(pixels, TASK_SIZE, MPI_INT, 0, 0, MPI_COMM_WORLD);
|
MPI_Send(taskVals, TASK_SIZE + 1, MPI_INT, 0, 0, MPI_COMM_WORLD);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user