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:
23 
25  { }
26 
29  { }
31 
44 
46  void ResetTimes();
47 
51  void EnableTimes();
52 
56  void DisableTimes();
57 
60  const Journalist& jnlst,
61  EJournalLevel level,
62  EJournalCategory category
63  ) const;
64 
68  {
69  return OverallAlgorithm_;
70  }
71 
73  const TimedTask& OverallAlgorithm() const
74  {
75  return OverallAlgorithm_;
76  }
77 
79  {
80  return PrintProblemStatistics_;
81  }
82 
84  {
85  return InitializeIterates_;
86  }
87 
89  {
90  return UpdateHessian_;
91  }
92 
94  {
95  return OutputIteration_;
96  }
97 
99  {
100  return UpdateBarrierParameter_;
101  }
102 
104  {
105  return ComputeSearchDirection_;
106  }
107 
109  {
110  return ComputeAcceptableTrialPoint_;
111  }
112 
114  {
115  return AcceptTrialPoint_;
116  }
117 
119  {
120  return CheckConvergence_;
121  }
122 
124  {
125  return PDSystemSolverTotal_;
126  }
127 
129  {
130  return PDSystemSolverSolveOnce_;
131  }
132 
134  {
135  return ComputeResiduals_;
136  }
137 
139  {
140  return StdAugSystemSolverMultiSolve_;
141  }
142 
144  {
145  return LinearSystemScaling_;
146  }
147 
149  {
150  return LinearSystemSymbolicFactorization_;
151  }
152 
154  {
155  return LinearSystemFactorization_;
156  }
157 
159  {
160  return LinearSystemBackSolve_;
161  }
162 
164  {
165  return LinearSystemStructureConverter_;
166  }
167 
169  {
170  return LinearSystemStructureConverterInit_;
171  }
172 
174  {
175  return QualityFunctionSearch_;
176  }
177 
179  {
180  return TryCorrector_;
181  }
182 
184  {
185  return Task1_;
186  }
187 
189  {
190  return Task2_;
191  }
192 
194  {
195  return Task3_;
196  }
197 
199  {
200  return Task4_;
201  }
202 
204  {
205  return Task5_;
206  }
207 
209  {
210  return Task6_;
211  }
212 
215  {
216  return f_eval_time_;
217  }
218 
221  {
222  return grad_f_eval_time_;
223  }
224 
227  {
228  return c_eval_time_;
229  }
230 
233  {
234  return jac_c_eval_time_;
235  }
236 
239  {
240  return d_eval_time_;
241  }
242 
245  {
246  return jac_d_eval_time_;
247  }
248 
251  {
252  return h_eval_time_;
253  }
255 
256 private:
267 
269  const TimingStatistics&
270  );
271 
273  void operator=(
274  const TimingStatistics&
275  );
277 
290 
303 
310 
319 };
320 
321 } // namespace Ipopt
322 
323 #endif
Class responsible for all message output.
Storing the reference count of all the smart pointers that currently reference it.
This class is used to collect timing information for a particular task.
Definition: IpTimedTask.hpp:16
This class collects all timing statistics for Ipopt.
virtual ~TimingStatistics()
Destructor.
void DisableTimes()
Method for disabling all timed tasks except for OverallAlgorithm.
TimedTask & ComputeAcceptableTrialPoint()
Number TotalFunctionEvaluationWallclockTime() const
total wall-clock time spend in function evaluation
void EnableTimes()
Method for enabling all timed tasked.
TimedTask & StdAugSystemSolverMultiSolve()
TimedTask & LinearSystemStructureConverterInit()
void ResetTimes()
Method for resetting all times.
TimingStatistics()
Default constructor.
void PrintAllTimingStatistics(const Journalist &jnlst, EJournalLevel level, EJournalCategory category) const
Method for printing all timing information.
TimedTask & PrintProblemStatistics()
TimedTask & UpdateBarrierParameter()
bool IsFunctionEvaluationTimeEnabled() const
Whether timing of function evaluation has been enabled.
TimedTask & LinearSystemSymbolicFactorization()
Number TotalFunctionEvaluationSysTime() const
total system time spend in function evaluation
TimedTask & LinearSystemStructureConverter()
const TimedTask & OverallAlgorithm() const
Number TotalFunctionEvaluationCpuTime() const
total CPU time spend in function evaluation
TimedTask & LinearSystemFactorization()
void operator=(const TimingStatistics &)
Default Assignment Operator.
TimingStatistics(const TimingStatistics &)
Copy Constructor.
#define IPOPTLIB_EXPORT
Definition: config.h:94
This file contains a base class for all exceptions and a set of macros to help with exceptions.
EJournalCategory
Category Selection Enum.
EJournalLevel
Print Level Enum.
ipnumber Number
Type of all numbers.
Definition: IpTypes.hpp:17