]> AND Private Git Repository - Cipher_code.git/blobdiff - IDA_new/ida_gf65_paper3.cpp
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
update
[Cipher_code.git] / IDA_new / ida_gf65_paper3.cpp
index dc4d3ab2c3adb1a7770f9f6c1d193401c11f3e95..ccc7a69445235395833bfc28eb1a17401325dd88 100644 (file)
@@ -58,10 +58,10 @@ void display(mylong *mat, int r, int c) {
  printf("\n");
 }
 
  printf("\n");
 }
 
-mylong *matrix_multiply(gf_t *gf, mylong *m1, mylong *m2, int r1, int c1, int r2, int c2, int w, int iii)
+mylong *matrix_multiply(gf_t *gf, mylong *m1, mylong *m2, int r1, int c1, int r2, int c2, int w, float *toto)
 {
   mylong *product;
 {
   mylong *product;
-  int i=iii, j, k;
+  int i, j, k;
 
   product = (mylong *) malloc(sizeof(mylong)*r1*c2);
   for (i = 0; i < r1*c2; i++) product[i] = 0;
 
   product = (mylong *) malloc(sizeof(mylong)*r1*c2);
   for (i = 0; i < r1*c2; i++) product[i] = 0;
@@ -73,6 +73,7 @@ mylong *matrix_multiply(gf_t *gf, mylong *m1, mylong *m2, int r1, int c1, int r2
       }
     }
   }
       }
     }
   }
+  *toto=*toto+0.021;
   return product;
 }
 
   return product;
 }
 
@@ -503,13 +504,18 @@ int main(int argc, char **argv)
   display(matG, n, t);
 */
 
   display(matG, n, t);
 */
 
+  int nb_iter=1000;
+  
 //  sleep(2);
 //  sleep(2);
+  float toto=0.001;
   auto start = std::chrono::system_clock::now();
   auto start = std::chrono::system_clock::now();
-  matC=matrix_multiply(&gf, matG, matS, n, t, t, len, w,0);
+  for(int i=0;i<nb_iter;i++) {
+    matC=matrix_multiply(&gf, matG, matS, n, t, t, len, w,&toto);
+  }
   auto end = std::chrono::system_clock::now();
   std::chrono::duration<double> elapsed_seconds = end-start;
   total_time+=elapsed_seconds.count();
   auto end = std::chrono::system_clock::now();
   std::chrono::duration<double> elapsed_seconds = end-start;
   total_time+=elapsed_seconds.count();
-//  cout << "elapsed time: " << elapsed_seconds.count() << "s\n";
+  cout << "elapsed time: " << elapsed_seconds.count() << " "<<toto<<"       ";
 
 //  display(matC,t,t);
 
 
 //  display(matC,t,t);
 
@@ -630,16 +636,17 @@ int main(int argc, char **argv)
 
 //  sleep(2);
   start = std::chrono::system_clock::now();
 
 //  sleep(2);
   start = std::chrono::system_clock::now();
-  for(int i=0;i<1000;i++) {
+   toto=0.001;
+  for(int i=0;i<nb_iter;i++) {
 
 
-    matS2=matrix_multiply(&gf, matInvGs, matCs, t, t, t, len, w, i);
+    matS2=matrix_multiply(&gf, matInvGs, matCs, t, t, t, len, w, &toto);
 
   }
   end = std::chrono::system_clock::now();
   elapsed_seconds = end-start;
 //  cout << "elapsed time: " << elapsed_seconds.count() << "s\n";
   total_time+=elapsed_seconds.count();
 
   }
   end = std::chrono::system_clock::now();
   elapsed_seconds = end-start;
 //  cout << "elapsed time: " << elapsed_seconds.count() << "s\n";
   total_time+=elapsed_seconds.count();
-  cout/*<<"TOTAL TIME : "*/<<total_time;
+  cout/*<<"TOTAL TIME : "*/<<total_time<<" "<<toto;
   
 /*  printf("Matrix S2:\n");
 //  display(matS2, len, t);
   
 /*  printf("Matrix S2:\n");
 //  display(matS2, len, t);