Cosan  1.0
Data Analytics Library
Paralleltest.cpp
Go to the documentation of this file.
1 //gcc -I/Users/xinyuzhang/Desktop/Spring2021/c++pattern/project/cosan /Users/xinyuzhang/Desktop/Spring2021/c++pattern/project/cosan/test/Paralleltest.cpp
2 #include <iostream>
3 #include <vector>
7 
8 #include <chrono>
9 #include <algorithm>
10 int main(){
11  // std::chrono::time_point<std::chrono::system_clock> st,ed;
12  // std::chrono::duration<double> tmp,tmp1;
13 
14  // gsl::index nrows = 100000;
15  // gsl::index foldnum = 50000;
16  // st = std::chrono::system_clock::now();
17  // Cosan::KFoldParallel(nrows,foldnum);
18  // ed = std::chrono::system_clock::now();
19  // tmp = std::chrono::duration_cast<std::chrono::duration<double>>(ed-st);
20 
21  // st =std::chrono::system_clock::now();
22  // Cosan::KFold(nrows,foldnum);
23  // ed = std::chrono::system_clock::now();
24 
25  // tmp1 = std::chrono::duration_cast<std::chrono::duration<double>>(ed-st);
26  // std::cout<<tmp.count()<<" "<<tmp1.count()<<std::endl;
27  // return 0;
28  // // run comparison: parallel 24.6386s, without parallel: 34.9594s
29 
30  // std::chrono::time_point<std::chrono::system_clock> st,ed;
31  // std::chrono::duration<double> tmp,tmp1;
32 
33  // gsl::index nrows = 100000;
34  // gsl::index foldnum = 50000;
35  // st = std::chrono::system_clock::now();
36  // Cosan::RandomKFoldParallel(nrows,foldnum);
37  // ed = std::chrono::system_clock::now();
38  // tmp = std::chrono::duration_cast<std::chrono::duration<double>>(ed-st);
39 
40  // st =std::chrono::system_clock::now();
41  // Cosan::RandomKFold(nrows,foldnum);
42  // ed = std::chrono::system_clock::now();
43 
44  // tmp1 = std::chrono::duration_cast<std::chrono::duration<double>>(ed-st);
45  // std::cout<<tmp.count()<<" "<<tmp1.count()<<std::endl;
46 
47  // run comparison: parallel 28.6542s, without parallel: 106.003s
48 
49  std::chrono::time_point<std::chrono::system_clock> st,ed;
50  std::chrono::duration<double> tmp,tmp1;
51 
52  gsl::index nrows = 100000;
53  gsl::index foldnum = 50000;
54  st = std::chrono::system_clock::now();
55  Cosan::TimeSeriesSplitParallel(nrows,foldnum);
56  ed = std::chrono::system_clock::now();
57  tmp = std::chrono::duration_cast<std::chrono::duration<double>>(ed-st);
58 
59  st =std::chrono::system_clock::now();
60  Cosan::TimeSeriesSplit(nrows,foldnum);
61  ed = std::chrono::system_clock::now();
62 
63  tmp1 = std::chrono::duration_cast<std::chrono::duration<double>>(ed-st);
64  std::cout<<tmp.count()<<" "<<tmp1.count()<<std::endl;
65 
66  // run comparison: parallel 10.3986s , without parallel: 16.503s
67 
68  return 0;
69 }
timeseriessplit.h
main
int main()
Definition: Paralleltest.cpp:10
randomkfold.h
Cosan::TimeSeriesSplitParallel
Definition: timeseriessplit.h:45
kfold.h
Cosan::TimeSeriesSplit
Definition: timeseriessplit.h:10