Ipopt Documentation  
IpTimingStatistics.hpp
Go to the documentation of this file.
1 // Copyright (C) 2005, 2008 International Business Machines and others.
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // Authors: Andreas Waechter IBM 2005-09-19
6 
7 #ifndef __IPTIMINGSTATISTICS_HPP__
8 #define __IPTIMINGSTATISTICS_HPP__
9 
10 #include "IpReferenced.hpp"
11 #include "IpJournalist.hpp"
12 #include "IpTimedTask.hpp"
13 
14 namespace Ipopt
15 {
19 {
20 public:
25  { }
26 
29  { }
31 
33  void ResetTimes();
34 
36  void PrintAllTimingStatistics(
37  Journalist& jnlst,
38  EJournalLevel level,
39  EJournalCategory category
40  ) const;
41 
45  {
46  return OverallAlgorithm_;
47  }
48 
50  {
51  return PrintProblemStatistics_;
52  }
53 
55  {
56  return InitializeIterates_;
57  }
58 
60  {
61  return UpdateHessian_;
62  }
63 
65  {
66  return OutputIteration_;
67  }
68 
70  {
71  return UpdateBarrierParameter_;
72  }
73 
75  {
76  return ComputeSearchDirection_;
77  }
78 
80  {
81  return ComputeAcceptableTrialPoint_;
82  }
83 
85  {
86  return AcceptTrialPoint_;
87  }
88 
90  {
91  return CheckConvergence_;
92  }
93 
95  {
96  return PDSystemSolverTotal_;
97  }
98 
100  {
101  return PDSystemSolverSolveOnce_;
102  }
103 
105  {
106  return ComputeResiduals_;
107  }
108 
110  {
111  return StdAugSystemSolverMultiSolve_;
112  }
113 
115  {
116  return LinearSystemScaling_;
117  }
118 
120  {
121  return LinearSystemSymbolicFactorization_;
122  }
123 
125  {
126  return LinearSystemFactorization_;
127  }
128 
130  {
131  return LinearSystemBackSolve_;
132  }
133 
135  {
136  return LinearSystemStructureConverter_;
137  }
138 
140  {
141  return LinearSystemStructureConverterInit_;
142  }
143 
145  {
146  return QualityFunctionSearch_;
147  }
148 
150  {
151  return TryCorrector_;
152  }
153 
155  {
156  return Task1_;
157  }
158 
160  {
161  return Task2_;
162  }
163 
165  {
166  return Task3_;
167  }
168 
170  {
171  return Task4_;
172  }
173 
175  {
176  return Task5_;
177  }
178 
180  {
181  return Task6_;
182  }
184 
185 private:
198  const TimingStatistics&
199  );
200 
202  void operator=(
203  const TimingStatistics&
204  );
206 
219 
232 
240 };
241 
242 } // namespace Ipopt
243 
244 #endif
Ipopt::TimingStatistics::OutputIteration_
TimedTask OutputIteration_
Definition: IpTimingStatistics.hpp:213
Ipopt::TimingStatistics::PDSystemSolverSolveOnce_
TimedTask PDSystemSolverSolveOnce_
Definition: IpTimingStatistics.hpp:221
Ipopt::TimingStatistics::QualityFunctionSearch
TimedTask & QualityFunctionSearch()
Definition: IpTimingStatistics.hpp:144
Ipopt::TimingStatistics::ComputeResiduals_
TimedTask ComputeResiduals_
Definition: IpTimingStatistics.hpp:222
Ipopt::TimingStatistics::LinearSystemSymbolicFactorization_
TimedTask LinearSystemSymbolicFactorization_
Definition: IpTimingStatistics.hpp:225
Ipopt::TimingStatistics::OverallAlgorithm
TimedTask & OverallAlgorithm()
Definition: IpTimingStatistics.hpp:44
Ipopt::TimingStatistics::TryCorrector_
TimedTask TryCorrector_
Definition: IpTimingStatistics.hpp:231
Ipopt::TimingStatistics::ComputeAcceptableTrialPoint_
TimedTask ComputeAcceptableTrialPoint_
Definition: IpTimingStatistics.hpp:216
Ipopt::TimingStatistics::LinearSystemScaling
TimedTask & LinearSystemScaling()
Definition: IpTimingStatistics.hpp:114
Ipopt::TimingStatistics::UpdateBarrierParameter
TimedTask & UpdateBarrierParameter()
Definition: IpTimingStatistics.hpp:69
Ipopt::TimingStatistics
This class collects all timing statistics for Ipopt.
Definition: IpTimingStatistics.hpp:18
Ipopt::TimingStatistics::LinearSystemBackSolve
TimedTask & LinearSystemBackSolve()
Definition: IpTimingStatistics.hpp:129
Ipopt::TimingStatistics::LinearSystemSymbolicFactorization
TimedTask & LinearSystemSymbolicFactorization()
Definition: IpTimingStatistics.hpp:119
Ipopt::TimingStatistics::LinearSystemScaling_
TimedTask LinearSystemScaling_
Definition: IpTimingStatistics.hpp:224
Ipopt::TimingStatistics::QualityFunctionSearch_
TimedTask QualityFunctionSearch_
Definition: IpTimingStatistics.hpp:230
Ipopt::TimingStatistics::InitializeIterates_
TimedTask InitializeIterates_
Definition: IpTimingStatistics.hpp:211
Ipopt::TimingStatistics::Task2_
TimedTask Task2_
Definition: IpTimingStatistics.hpp:234
Ipopt
This file contains a base class for all exceptions and a set of macros to help with exceptions.
Definition: IpInexactAlgBuilder.hpp:13
Ipopt::TimingStatistics::OverallAlgorithm_
TimedTask OverallAlgorithm_
Definition: IpTimingStatistics.hpp:209
Ipopt::TimingStatistics::Task6_
TimedTask Task6_
Definition: IpTimingStatistics.hpp:238
IpJournalist.hpp
Ipopt::TimingStatistics::Task6
TimedTask & Task6()
Definition: IpTimingStatistics.hpp:179
Ipopt::TimingStatistics::ComputeSearchDirection
TimedTask & ComputeSearchDirection()
Definition: IpTimingStatistics.hpp:74
Ipopt::EJournalLevel
EJournalLevel
Print Level Enum.
Definition: IpJournalist.hpp:31
Ipopt::TimingStatistics::PrintProblemStatistics_
TimedTask PrintProblemStatistics_
Definition: IpTimingStatistics.hpp:210
Ipopt::TimingStatistics::ComputeSearchDirection_
TimedTask ComputeSearchDirection_
Definition: IpTimingStatistics.hpp:215
Ipopt::TimingStatistics::PDSystemSolverSolveOnce
TimedTask & PDSystemSolverSolveOnce()
Definition: IpTimingStatistics.hpp:99
IPOPTLIB_EXPORT
#define IPOPTLIB_EXPORT
Definition: config_default.h:16
Ipopt::TimingStatistics::UpdateHessian_
TimedTask UpdateHessian_
Definition: IpTimingStatistics.hpp:212
Ipopt::TimingStatistics::CheckConvergence
TimedTask & CheckConvergence()
Definition: IpTimingStatistics.hpp:89
Ipopt::TimingStatistics::TryCorrector
TimedTask & TryCorrector()
Definition: IpTimingStatistics.hpp:149
Ipopt::TimingStatistics::LinearSystemStructureConverter
TimedTask & LinearSystemStructureConverter()
Definition: IpTimingStatistics.hpp:134
Ipopt::EJournalCategory
EJournalCategory
Category Selection Enum.
Definition: IpJournalist.hpp:51
Ipopt::TimingStatistics::StdAugSystemSolverMultiSolve
TimedTask & StdAugSystemSolverMultiSolve()
Definition: IpTimingStatistics.hpp:109
Ipopt::TimingStatistics::AcceptTrialPoint
TimedTask & AcceptTrialPoint()
Definition: IpTimingStatistics.hpp:84
Ipopt::TimingStatistics::UpdateHessian
TimedTask & UpdateHessian()
Definition: IpTimingStatistics.hpp:59
Ipopt::TimingStatistics::Task3
TimedTask & Task3()
Definition: IpTimingStatistics.hpp:164
IpReferenced.hpp
Ipopt::TimingStatistics::OutputIteration
TimedTask & OutputIteration()
Definition: IpTimingStatistics.hpp:64
Ipopt::TimingStatistics::Task3_
TimedTask Task3_
Definition: IpTimingStatistics.hpp:235
Ipopt::TimingStatistics::LinearSystemFactorization
TimedTask & LinearSystemFactorization()
Definition: IpTimingStatistics.hpp:124
Ipopt::TimingStatistics::ComputeAcceptableTrialPoint
TimedTask & ComputeAcceptableTrialPoint()
Definition: IpTimingStatistics.hpp:79
Ipopt::TimingStatistics::~TimingStatistics
virtual ~TimingStatistics()
Destructor.
Definition: IpTimingStatistics.hpp:28
Ipopt::TimingStatistics::TimingStatistics
TimingStatistics()
Default constructor.
Definition: IpTimingStatistics.hpp:24
Ipopt::TimingStatistics::AcceptTrialPoint_
TimedTask AcceptTrialPoint_
Definition: IpTimingStatistics.hpp:217
Ipopt::TimingStatistics::LinearSystemFactorization_
TimedTask LinearSystemFactorization_
Definition: IpTimingStatistics.hpp:226
Ipopt::TimingStatistics::UpdateBarrierParameter_
TimedTask UpdateBarrierParameter_
Definition: IpTimingStatistics.hpp:214
Ipopt::TimingStatistics::ComputeResiduals
TimedTask & ComputeResiduals()
Definition: IpTimingStatistics.hpp:104
Ipopt::TimingStatistics::Task5_
TimedTask Task5_
Definition: IpTimingStatistics.hpp:237
Ipopt::Journalist
Class responsible for all message output.
Definition: IpJournalist.hpp:116
Ipopt::TimingStatistics::InitializeIterates
TimedTask & InitializeIterates()
Definition: IpTimingStatistics.hpp:54
Ipopt::TimingStatistics::PDSystemSolverTotal_
TimedTask PDSystemSolverTotal_
Definition: IpTimingStatistics.hpp:220
Ipopt::TimingStatistics::LinearSystemStructureConverterInit
TimedTask & LinearSystemStructureConverterInit()
Definition: IpTimingStatistics.hpp:139
IpTimedTask.hpp
Ipopt::TimingStatistics::LinearSystemStructureConverter_
TimedTask LinearSystemStructureConverter_
Definition: IpTimingStatistics.hpp:228
Ipopt::TimingStatistics::PrintProblemStatistics
TimedTask & PrintProblemStatistics()
Definition: IpTimingStatistics.hpp:49
Ipopt::TimingStatistics::Task4_
TimedTask Task4_
Definition: IpTimingStatistics.hpp:236
Ipopt::TimingStatistics::Task1
TimedTask & Task1()
Definition: IpTimingStatistics.hpp:154
Ipopt::TimedTask
This class is used to collect timing information for a particular task.
Definition: IpTimedTask.hpp:18
Ipopt::TimingStatistics::StdAugSystemSolverMultiSolve_
TimedTask StdAugSystemSolverMultiSolve_
Definition: IpTimingStatistics.hpp:223
Ipopt::TimingStatistics::LinearSystemStructureConverterInit_
TimedTask LinearSystemStructureConverterInit_
Definition: IpTimingStatistics.hpp:229
Ipopt::TimingStatistics::Task2
TimedTask & Task2()
Definition: IpTimingStatistics.hpp:159
Ipopt::TimingStatistics::PDSystemSolverTotal
TimedTask & PDSystemSolverTotal()
Definition: IpTimingStatistics.hpp:94
Ipopt::TimingStatistics::CheckConvergence_
TimedTask CheckConvergence_
Definition: IpTimingStatistics.hpp:218
Ipopt::TimingStatistics::Task1_
TimedTask Task1_
Definition: IpTimingStatistics.hpp:233
Ipopt::ReferencedObject
Storing the reference count of all the smart pointers that currently reference it.
Definition: IpReferenced.hpp:169
Ipopt::TimingStatistics::Task4
TimedTask & Task4()
Definition: IpTimingStatistics.hpp:169
Ipopt::TimingStatistics::LinearSystemBackSolve_
TimedTask LinearSystemBackSolve_
Definition: IpTimingStatistics.hpp:227
Ipopt::TimingStatistics::Task5
TimedTask & Task5()
Definition: IpTimingStatistics.hpp:174