diff --git a/cek.sh b/cek.sh new file mode 100755 index 0000000000000000000000000000000000000000..ad7f1c54368a9d2c90b533b20e03748de5769851 --- /dev/null +++ b/cek.sh @@ -0,0 +1 @@ +mpicc -o ./src/MST_OpenMPI ./src/MST_OpenMPI.c \ No newline at end of file diff --git a/src/MST_OpenMP.c b/src/MST_OpenMP.c index 4b4e65e68ee3dbdd42cd26dfabb1584e3bc0219f..29564c7e5e594f7fee83aa8669cc33591c83e2ea 100644 --- a/src/MST_OpenMP.c +++ b/src/MST_OpenMP.c @@ -78,37 +78,6 @@ void PartisiSrc(Edge T[], int i, int j, int *k) } *k = q; } -void PartisiDest(Edge T[], int i, int j, int *k) -{ - Edge pivot = T[i - 1]; - int p = i; - int q = j; - while (p <= q) - { - while (T[p - 1].dest < pivot.dest && T[p - 1].src != pivot.src) - { - p++; - } - while (T[q - 1].dest > pivot.dest && T[p - 1].src != pivot.src) - { - q--; - } - - if (p < q) - { - Edge temp = T[p - 1]; - T[p - 1] = T[q - 1]; - T[q - 1] = temp; - p++; - q--; - } - else if (p == q) - { - p++; - } - } - *k = q; -} // Mengurutkan array dengan menggunakan Quick Sort void QuickSortSrc(Edge T[], int i, int j) @@ -117,8 +86,6 @@ void QuickSortSrc(Edge T[], int i, int j) if (i < j) { - PartisiSrc(T, i, j, &k); - PartisiDest(T, i, j, &k); PartisiSrc(T, i, j, &k); #pragma omp task {QuickSortSrc(T, k + 1, j);} diff --git a/src/MST_OpenMPI b/src/MST_OpenMPI index b8d21e740d2d76f6fb897fba1617500d62afcc5c..46a1efd6b0b192b732dc4e9f325ca04bec9384e5 100755 Binary files a/src/MST_OpenMPI and b/src/MST_OpenMPI differ diff --git a/src/MST_OpenMPI.c b/src/MST_OpenMPI.c index 389281e780cd850f40e0fffda4ee8b1b2fc1f286..2fe891f20f920547ea6bf45e298a00b86f15d94c 100644 --- a/src/MST_OpenMPI.c +++ b/src/MST_OpenMPI.c @@ -131,7 +131,7 @@ void QuickSort(Edge T[], int i, int j, int rank, int max_rank, int rank_index){ makeStruct(&mpi_edge_type); int distributed_process = rank + pow2(rank_index); - rank_index++; + // rank_index++; // If the rank of distributed process is higher than max rank if (distributed_process >= max_rank) { diff --git a/src/MST_Serial.c b/src/MST_Serial.c index 1d2069114d531d5ecc53cb748d9384b38143f20b..5bcc77638054b4e12666ad646434ea7d355ac4e8 100644 --- a/src/MST_Serial.c +++ b/src/MST_Serial.c @@ -126,8 +126,6 @@ void QuickSortWeight(Edge T[], int i, int j) if (i < j) { PartisiWeight(T, i, j, &k); - // PrintArray(T, i, k); - // PrintArray(T, k + 1, j); QuickSortWeight(T, i, k); QuickSortWeight(T, k + 1, j); }