Changeset 1522 for XIOS/dev/branch_openmp/extern/ep_dev/main.cpp
- Timestamp:
- 06/05/18 19:14:40 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/dev/branch_openmp/extern/ep_dev/main.cpp
r1518 r1522 852 852 853 853 if(rank == 0) printf(" \t Test iP2P for intercomm \t OK\n"); 854 855 854 856 855 857 … … 888 890 MPI_Comm_size(inter_comm_dup_merged, &inter_comm_dup_merged_size); 889 891 890 printf("rank = %d, inter_comm_dup_merged_rank = %d, inter_comm_dup_merged_size = %d\n", rank, inter_comm_dup_merged_rank, inter_comm_dup_merged_size); 892 //printf("rank = %d, inter_comm_dup_merged_rank = %d, inter_comm_dup_merged_size = %d\n", rank, inter_comm_dup_merged_rank, inter_comm_dup_merged_size); 893 894 // TEST OF TESTALL 895 896 int merged_size, merged_rank; 897 MPI_Comm_rank(inter_comm_dup_merged, &merged_rank); 898 MPI_Comm_size(inter_comm_dup_merged, &merged_size); 899 900 int left = merged_rank>0? merged_rank-1 : merged_size-1; 901 int right = (merged_rank+1) % merged_size; 902 903 //printf("rank = %d, left = %d, right = %d\n", merged_rank, left, right); 904 905 int N=10000; 906 int *left_buf = new int[N]; 907 int *right_buf = new int[N]; 908 909 for(int i=0; i<N; i++) 910 { 911 right_buf[i] = merged_rank*100000+i; 912 } 913 914 MPI_Request request[2]; 915 MPI_Status status[2]; 916 917 MPI_Irecv(left_buf, N, MPI_INT, left, 0, inter_comm_dup_merged, &request[0]); 918 MPI_Isend(right_buf, N, MPI_INT, right, 0, inter_comm_dup_merged, &request[1]); 919 920 921 int flag; 922 MPI_Testall(2, request, &flag, status); 923 924 printf("rank = %d, flag = %d\n", merged_rank, flag); 925 926 while(!flag) MPI_Testall(2, request, &flag, status); 927 //if(!flag) MPI_Waitall(2, request, status); 928 929 int recv_count; 930 MPI_Get_count(&status[0], MPI_INT, &recv_count); 931 932 MPI_Barrier(inter_comm_dup_merged); 933 934 printf("rank = %d, recv_count = %d, left_buf[5-10] = %d\t%d\t%d\t%d\t%d\t%d\n", merged_rank, recv_count, left_buf[5], left_buf[6], left_buf[7], left_buf[8], left_buf[9], left_buf[10]); 935 936 delete[] left_buf; 937 delete[] right_buf; 938 939 891 940 892 941 // TEST OF GATHER … … 961 1010 962 1011 // TEST OF EXSCAN 963 {1012 /*{ 964 1013 965 1014 std::vector<int>sendbuf(2, inter_comm_dup_merged_rank); … … 988 1037 if(inter_comm_dup_merged_rank == 0 && exscan_result) printf(" \t test MPI_Exscan for merged comm \t OK\n"); 989 1038 if(inter_comm_dup_merged_rank == 0 && !exscan_result) printf(" \t test MPI_Exscan for merged comm \t FAILED %d\n", exscan_result); 990 } 1039 }*/ 991 1040 992 1041 // TEST OF SCATTERV
Note: See TracChangeset
for help on using the changeset viewer.