benchmarkX.cpp
Go to the documentation of this file.
1 // g++ -fopenmp -I .. -O3 -DNDEBUG -finline-limit=1000 benchmarkX.cpp -o b && time ./b
2 
3 #include <iostream>
4 
5 #include <Eigen/Core>
6 
7 using namespace std;
8 using namespace Eigen;
9 
10 #ifndef MATTYPE
11 #define MATTYPE MatrixXLd
12 #endif
13 
14 #ifndef MATSIZE
15 #define MATSIZE 400
16 #endif
17 
18 #ifndef REPEAT
19 #define REPEAT 100
20 #endif
21 
22 int main(int argc, char *argv[])
23 {
24  MATTYPE I = MATTYPE::Ones(MATSIZE,MATSIZE);
26  for(int i = 0; i < MATSIZE; i++) for(int j = 0; j < MATSIZE; j++)
27  {
28  m(i,j) = (i+j+1)/(MATSIZE*MATSIZE);
29  }
30  for(int a = 0; a < REPEAT; a++)
31  {
32  m = I + 0.0001 * (m + m*m);
33  }
34  cout << m(0,0) << endl;
35  return 0;
36 }
Eigen
Namespace containing all symbols from the Eigen library.
Definition: jet.h:637
MATSIZE
#define MATSIZE
Definition: benchmarkX.cpp:15
REPEAT
#define REPEAT
Definition: benchmarkX.cpp:19
j
std::ptrdiff_t j
Definition: tut_arithmetic_redux_minmax.cpp:2
I
#define I
Definition: main.h:112
m
Matrix3f m
Definition: AngleAxis_mimic_euler.cpp:1
MATTYPE
#define MATTYPE
Definition: benchmarkX.cpp:11
a
ArrayXXi a
Definition: Array_initializer_list_23_cxx11.cpp:1
std
Definition: BFloat16.h:88
main
int main(int argc, char *argv[])
Definition: benchmarkX.cpp:22
i
int i
Definition: BiCGSTAB_step_by_step.cpp:9


gtsam
Author(s):
autogenerated on Sat Nov 16 2024 04:01:54