fix mpi init/set device order

main
Bryce Allen 4 years ago
parent df5f830a26
commit 349837e9c7

@ -47,29 +47,31 @@ void set_rank_device(int n_ranks, int rank) {
int main(int argc, char **argv) {
int n = 1024;
int world_size, world_rank;
int world_size, world_rank, device_id;
uint32_t vendor_id;
double a = 2.0;
double sum = 0.0;
auto x = gt::empty<double>({n});
auto y = gt::empty<double>({n});
auto d_x = gt::empty_device<double>({n});
auto d_y = gt::empty_device<double>({n});
MPI_Init(NULL, NULL);
MPI_Comm_size(MPI_COMM_WORLD, &world_size);
MPI_Comm_rank(MPI_COMM_WORLD, &world_rank);
set_rank_device(world_size, world_rank);
auto x = gt::empty<double>({n});
auto y = gt::empty<double>({n});
auto d_x = gt::empty_device<double>({n});
auto d_y = gt::empty_device<double>({n});
for (int i=0; i<n; i++) {
x[i] = i+1;
y[i] = -i-1;
}
set_rank_device(world_size, world_rank);
vendor_id = gt::backend::clib::device_get_vendor_id(gt::backend::clib::device_get());
device_id = gt::backend::clib::device_get();
vendor_id = gt::backend::clib::device_get_vendor_id(device_id);
gt::blas::handle_t* h = gt::blas::create();
@ -87,7 +89,7 @@ int main(int argc, char **argv) {
//printf("%f\n", y[i]);
sum += y[i];
}
printf("%d/%d [%x] SUM = %f\n", world_rank, world_size, vendor_id, sum);
printf("%d/%d [%d:0x%08x] SUM = %f\n", world_rank, world_size, device_id, vendor_id, sum);
MPI_Finalize();

Loading…
Cancel
Save