 }
 
 
-
+// Estimates 
+// maxFrac : 
+// nr_rows :
+// nr_cols :
 int estimateMaxGPUAllocation(double maxFrac, int nr_rows, int nr_cols) {
   size_t free_byte ;
   size_t total_byte ;

}


// Returns matrix product c = a.a^T where each entry is of the type mpf_class
//
// All arrays need to already have allocated memory:                                                                  
// *c : array of mpf_class with size nr_rowsA * nr_rowsA                  
// *a : array of mpf_class with size nr_rowsA * nr_colsA
// *d_aS: array allocated in GPU with size sizeOfArray * nr_rowsA * nr_colsA. Note that we flatten this               

  sizeOfArray = (INT64L * minSize) / ownLimbSize;
  if ((INT64L * minSize) % ownLimbSize != 0) sizeOfArray += 1;
}



// All arrays need to already have allocated memory: 
