]> AND Private Git Repository - loba.git/commitdiff
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
Reindent.
authorArnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
Mon, 5 Sep 2011 13:04:24 +0000 (15:04 +0200)
committerArnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
Mon, 5 Sep 2011 13:04:24 +0000 (15:04 +0200)
loba_bulk.cpp
loba_lln.cpp

index 0821edaf030975eb4fbb90ebf6cc318a4eeb49b7..96f35391c2088bf72a6b62f61596c146838e8597 100644 (file)
@@ -7,81 +7,88 @@ XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(loba);
 
 void loba_bulk::load_balance()
 {
-       float myLoad = get_load();
+    float myLoad = get_load();
 
-       unsigned NbNwMinLoad = 0;
-       unsigned NbNwLowerLoad = 0;
-       unsigned NbNeighbours = pneigh.size();
+    unsigned NbNwMinLoad = 0;
+    unsigned NbNwLowerLoad = 0;
+    unsigned NbNeighbours = pneigh.size();
 
-       double *S = new double[NbNeighbours];
-       for (unsigned i = 0; i < NbNeighbours; i++)
-               S[i] = 0.0;
-       //What is the minimum and maximum load under myLoad?
-       float minLoad = myLoad;
-       for (unsigned i = 0; i < NbNeighbours; i++) {
-               if (pneigh[i]->get_load() < minLoad) {
-                       minLoad = pneigh[i]->get_load();
-               }
-               if (pneigh[i]->get_load() < myLoad) {
-                       NbNwLowerLoad++;
-               }
-       }
-       for (unsigned i = 0; i < NbNeighbours; i++)
-               if (pneigh[i]->get_load() == minLoad)
-                       NbNwMinLoad++;
+    double *S = new double[NbNeighbours];
+    for (unsigned i = 0; i < NbNeighbours; i++)
+        S[i] = 0.0;
 
-       float maxLoad = minLoad;
-       for (unsigned i = 0; i < NbNeighbours; i++) {
-               if (pneigh[i]->get_load() > minLoad && pneigh[i]->get_load() < myLoad)
-                       if (maxLoad < pneigh[i]->get_load())
-                               maxLoad = pneigh[i]->get_load();
-       }
+    // What is the minimum and maximum load under myLoad?
+    float minLoad = myLoad;
+    for (unsigned i = 0; i < NbNeighbours; i++) {
+        if (pneigh[i]->get_load() < minLoad) {
+            minLoad = pneigh[i]->get_load();
+        }
+        if (pneigh[i]->get_load() < myLoad) {
+            NbNwLowerLoad++;
+        }
+    }
+    for (unsigned i = 0; i < NbNeighbours; i++)
+        if (pneigh[i]->get_load() == minLoad)
+            NbNwMinLoad++;
+
+    float maxLoad = minLoad;
+    for (unsigned i = 0; i < NbNeighbours; i++) {
+        if (pneigh[i]->get_load() > minLoad && pneigh[i]->get_load() < myLoad)
+            if (maxLoad < pneigh[i]->get_load())
+                maxLoad = pneigh[i]->get_load();
+    }
 
-       double alpha = 0.0;
+    double alpha = 0.0;
 
-       if (NbNwLowerLoad && NbNwMinLoad < NbNwLowerLoad) //There is one or many neighbors with minimum load but not all neighbors have minimum load
-               alpha = (1. / ((double) NbNwMinLoad + 2));
-       if (NbNwMinLoad == NbNwLowerLoad) //All neighbors have minimum load
-               alpha = (1. / ((double) NbNwMinLoad + 1));
-       float myS = 0.;
-       //There exist underloaded neighbors
-       if (NbNwMinLoad && myLoad != 0.0) {
-               for (unsigned i = 0; i < NbNeighbours; i++) {
-                       if (pneigh[i]->get_load() == minLoad) {
-                               S[i] = floor(alpha * (myLoad - minLoad));
-                               myS +=  S[i];
-                       } else {
-                               if (pneigh[i]->get_load() < myLoad) {
-                                       S[i] = floor(alpha * (myLoad - pneigh[i]->get_load()));
-                                       myS +=  S[i];
-                               }
-                       }
-               }
-               //Check assumption 4.2 (b) page 520
-               bool HaveToCorrectS = false;
-               for (unsigned i = 0; i < NbNeighbours; i++) {
-                       if (pneigh[i]->get_load() < myLoad) { //
-                               //Condition 4.6
-                               if ((myLoad - myS) < (pneigh[i]->get_load() + S[i])) {
-                                       HaveToCorrectS = true;
-                               }
-                       }
-               }
-               if (HaveToCorrectS) {
-                               for (unsigned i = 0; i < NbNeighbours; i++) {
-                                       while (((myLoad - myS) < pneigh[i]->get_load() + S[i]) && (S[i] > 0)) {
-                                               myS -= 1.0;
-                                               S[i] -= 1.0;
-                                       }
-                               }
-               }
-       }//End there are underloaded neighbors;
-       for (unsigned i = 0 ; i < NbNeighbours ; i++) {
-                send(pneigh[i], S[i]);
-                XBT_DEBUG("sent to %s", pneigh[i]->get_name());
+    if (NbNwLowerLoad && NbNwMinLoad < NbNwLowerLoad) {
+        // There is one or many neighbors with minimum load but not
+        // all neighbors have minimum load
+        alpha = (1. / ((double) NbNwMinLoad + 2));
+    }
+    if (NbNwMinLoad == NbNwLowerLoad) {
+        // All neighbors have minimum load
+        alpha = (1. / ((double) NbNwMinLoad + 1));
+    }
+    float myS = 0.;
+    // There exist underloaded neighbors
+    if (NbNwMinLoad && myLoad != 0.0) {
+        for (unsigned i = 0; i < NbNeighbours; i++) {
+            if (pneigh[i]->get_load() == minLoad) {
+                S[i] = floor(alpha * (myLoad - minLoad));
+                myS += S[i];
+            } else {
+                if (pneigh[i]->get_load() < myLoad) {
+                    S[i] = floor(alpha * (myLoad - pneigh[i]->get_load()));
+                    myS += S[i];
+                }
+            }
+        }
+        // Check assumption 4.2 (b) page 520
+        bool HaveToCorrectS = false;
+        for (unsigned i = 0; i < NbNeighbours; i++) {
+            if (pneigh[i]->get_load() < myLoad) {
+                // Condition 4.6
+                if ((myLoad - myS) < (pneigh[i]->get_load() + S[i])) {
+                    HaveToCorrectS = true;
+                }
+            }
+        }
+        if (HaveToCorrectS) {
+            for (unsigned i = 0; i < NbNeighbours; i++) {
+                while (((myLoad - myS) < pneigh[i]->get_load() + S[i])
+                       && (S[i] > 0)) {
+                    myS -= 1.0;
+                    S[i] -= 1.0;
+                }
+            }
         }
+    } // End there are underloaded neighbors;
+    for (unsigned i = 0; i < NbNeighbours; i++) {
+        send(pneigh[i], S[i]);
+        XBT_DEBUG("sent to %s", pneigh[i]->get_name());
+    }
 
-       delete[] S;
+    delete[] S;
 }
 
 // Local variables:
index 35acb265cd1fb325d9dd453b167eea237e0d0875..0422b38ff5a082e7cd38b1c247a8870b720712a6 100644 (file)
@@ -7,32 +7,34 @@ XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(loba);
 
 void loba_lln::load_balance()
 {
-       std::vector<int>  listLessLoadedNeighbors;
-       unsigned i;
-       double myLoad = get_load();
-       unsigned size = pneigh.size();
-       double *S = new double[size];
-       double lessLoad = get_load();
+    std::vector<int> listLessLoadedNeighbors;
+    unsigned i;
+    double myLoad = get_load();
+    unsigned size = pneigh.size();
+    double *S = new double[size];
+    double lessLoad = get_load();
 
-       listLessLoadedNeighbors.clear();
-               for(i=0;i<size;++i) {
-                       S[i]=0.0;
-                       if( pneigh[i]->get_load()< lessLoad )
-                                       listLessLoadedNeighbors.push_back(i);
-               }
-               int nbLessLoadedNeighbors=listLessLoadedNeighbors.size();
-               for( i=0; i<listLessLoadedNeighbors.size(); ++i) {
-                       double delta = (myLoad-pneigh[listLessLoadedNeighbors[i]]->get_load())/(nbLessLoadedNeighbors+1);
-                       if(myLoad-delta > pneigh[listLessLoadedNeighbors[i]]->get_load()) {
-                               S[i]=delta;
-                               myLoad-=delta;
-                       }
-               }
-               for(i=0; i<size; ++i) {
-                       send(pneigh[i], S[i]);
-                       XBT_DEBUG("sent to %s", pneigh[i]->get_name());
-               }
-       delete[] S;
+    listLessLoadedNeighbors.clear();
+    for (i = 0; i < size; ++i) {
+        S[i] = 0.0;
+        if (pneigh[i]->get_load() < lessLoad)
+            listLessLoadedNeighbors.push_back(i);
+    }
+    int nbLessLoadedNeighbors = listLessLoadedNeighbors.size();
+    for (i = 0; i < listLessLoadedNeighbors.size(); ++i) {
+        double delta =
+            (myLoad - pneigh[listLessLoadedNeighbors[i]]->get_load()) /
+            (nbLessLoadedNeighbors + 1);
+        if (myLoad - delta > pneigh[listLessLoadedNeighbors[i]]->get_load()) {
+            S[i] = delta;
+            myLoad -= delta;
+        }
+    }
+    for (i = 0; i < size; ++i) {
+        send(pneigh[i], S[i]);
+        XBT_DEBUG("sent to %s", pneigh[i]->get_name());
+    }
+    delete[] S;
 }
 
 // Local variables: