/* * Copyright (c) 2008 The Trustees of Indiana University and Indiana * University Research and Technology * Corporation. All rights reserved. * * Author(s): Torsten Hoefler * */ #include #include #include int MPI_Virtual_graph_create(MPI_Comm comm_old, int n, int *nodes, int *degrees, int *tgtnodes, int reorder, MPI_Comm *newcomm) { int rank, p; MPI_Comm_rank(comm_old, &rank); MPI_Comm_size(comm_old, &p); int *sindex = (int*)calloc(1,p*sizeof(int)); int *rindex = (int*)calloc(1,p*sizeof(int)); int *rindexscan = (int*)calloc(1,p*sizeof(int)); for(int i = 0; i