benchmark/edge_lookup.cc
changeset 2240 d93c034d3c98
parent 2238 8d623100ab13
child 2242 16523135943d
equal deleted inserted replaced
1:4abddb01a1fd 2:a06f41b47660
    72 	e=_el(u,v);
    72 	e=_el(u,v);
    73   }
    73   }
    74   
    74   
    75 };
    75 };
    76 
    76 
    77 class EL4
    77 // class EL4
    78 {
    78 // {
    79 public:
    79 // public:
    80   Graph &_g;
    80 //   Graph &_g;
    81   EdgeLookUp4<Graph> _el;
    81 //   EdgeLookUp4<Graph> _el;
    82   EL4(Graph &g) :_g(g), _el(g) {}
    82 //   EL4(Graph &g) :_g(g), _el(g) {}
    83   void operator()() 
    83 //   void operator()() 
    84   {
    84 //   {
    85     Edge e;
    85 //     Edge e;
    86     
    86     
    87     for(NodeIt v(_g);v!=INVALID;++v)
    87 //     for(NodeIt v(_g);v!=INVALID;++v)
    88       for(NodeIt u(_g);u!=INVALID;++u)
    88 //       for(NodeIt u(_g);u!=INVALID;++u)
    89 	e=_el(u,v);
    89 // 	e=_el(u,v);
    90   }
    90 //   }
    91   
    91   
    92 };
    92 // };
    93 
    93 
    94 int main(int, char**argv)
    94 int main(int, char**argv)
    95 {
    95 {
    96   int N=atoi(argv[1]);
    96   int N=atoi(argv[1]);
    97   int M=int(N*atof(argv[2]));
    97   int M=int(N*atof(argv[2]));
   123 
   123 
   124   TimeStamp t1 = runningTimeTest(FE(g),1);
   124   TimeStamp t1 = runningTimeTest(FE(g),1);
   125   TimeStamp t2 = runningTimeTest(EL(g),1);
   125   TimeStamp t2 = runningTimeTest(EL(g),1);
   126   TimeStamp t3 = runningTimeTest(EL2(g),1);
   126   TimeStamp t3 = runningTimeTest(EL2(g),1);
   127   TimeStamp t4 = runningTimeTest(EL3(g),1);
   127   TimeStamp t4 = runningTimeTest(EL3(g),1);
   128   TimeStamp t5 = runningTimeTest(EL4(g),1);
   128 //   TimeStamp t5 = runningTimeTest(EL4(g),1);
   129 
   129 
   130   std::cout << t1.userTime()/N/N << ' ' 
   130   std::cout << t1.userTime()/N/N << ' ' 
   131 	    << t2.userTime()/N/N << ' '
   131 	    << t2.userTime()/N/N << ' '
   132 	    << t3.userTime()/N/N << ' '
   132 	    << t3.userTime()/N/N << ' '
   133 	    << t4.userTime()/N/N << ' '
   133 	    << t4.userTime()/N/N << ' '
   134 	    << t5.userTime()/N/N << std::endl;
   134 // 	    << t5.userTime()/N/N
       
   135 	    << std::endl;
   135 }
   136 }
   136 
   137